【C/C++面经_基础语法_(2)】
11、既然有了malloc/free,c++中为什么还需要new/delete呢?直接使用malloc/free不好吗?12、被free回收的内存是立即返还给操作系统吗?13、宏定义和函数有何区别?14、宏定义和typedef区别?15、变量声明和定义的区别16、strlen和sizeof区别?17、常量指针和指针常量区别?18、a和&a有什么区别?19、c++和Python的区别20、c++和c语言的区别
11、既然有了malloc/free,c++中为什么还需要new/delete呢?直接使用malloc/free不好吗?
malloc/free和new/delete都是用来申请内存和回收内存的。在对非基本数据类型的对象使用的时候,对象创建的时候还需要执行构造函数,销毁的时候要执行析构函数。而malloc/free是库函数,是已经编译的代码,所以不能把构造函数和析构函数的功能强加
共有 0 条评论