美文网首页
C++面试(1)

C++面试(1)

作者: 鼓励自己前进 | 来源:发表于2018-11-09 14:57 被阅读0次

1.new、delete、malloc、free关系

delete会调用对象的析构函数,和new对应free只会释放内存,new调用构造函数。malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够把执行构造函数和析构函数的任务强加于malloc/free。因此C++语言需要一个能完成动态内存分配和初始化工作的运算符new,以及一个能完成清理与释放内存工作的运算符delete。注意new/delete不是库函数


相关文章

  • C++面试(1)

    1.new、delete、malloc、free关系 delete会调用对象的析构函数,和new对应free只会释...

  • C++基础

    c++面试题

  • c++面试

    一、 C/C++程序基础 面试例题1——分析代码写输出(一般赋值语句的概念和方法)。 面试例题2—...

  • 一文读懂C++拷贝构造函数?

    C++面试中,经常有面试官问“请你说一下C++拷贝构造函数是什么?“。而我们在阅读STL等很多C++的源码时,我们...

  • 2019-03-19

    今天开始准备C++面试。0基础学习C++。一直更新到拿到C++的offer。

  • 蚂蚁金服数据技术部一面

    岗位:C++分布式存储面试时长:1h 面试内容 聊了半个小时项目,项目内容和技术基本上表述清楚了,面试官问得问题不...

  • C++面试题

    C++音视频开发 面试1 技能要求:Socket,MFC,Windows 岗位职责:1、参与需求分析、模块开发等相...

  • C++基础面试

    面试中的C++常见问题 1.在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern “C”? 答:首...

  • C和C++的区别和联系(扩展知识)

    复习整理:C/C++区别与联系; 关于C和C++的区别是面试中经常会被问到的问题,本着即将面试的心态,进行知识整理...

  • 路线

    超级详细Linux环境后台开发C++学习路线,已拿鹅厂offer 另一篇文章面试经验:《腾讯C++后台开发面试笔试...

网友评论

      本文标题:C++面试(1)

      本文链接:https://www.haomeiwen.com/subject/ulloxqtx.html