百度面试题——malloc/free和new/delete的异同
2012-09-09 13:43
288 查看
相同点: malloc/free和new/delete都用来进行内存分配和释放。 不同点: 1、malloc/free是C++/C语言的标准库函数,而new/delete是C++的运算符。 2、采用malloc申请内存以字节为单位,且返回的内存类型为void *,因此赋予具体的类型时需要进行强制转换;而new则可根据需要的类型进行分配,并返回匹配类型的指针。 3、对于非内部数据类型的对象,采用maloc/free分配内存不会自动执行对象的构造和析构函数;而new/delete在分配和释放内存的时候同时执行对象的构造和析构函数以初始化内存。 4、new/delete可被重载来实现符合特定需要的内存分配,用户无需关心具体细节;而malloc/free只是库函数,分配和释放内存都需要自己维护。
相关文章推荐
- 百度面试题:malloc/free 与 new/delete 的区别
- malloc/free和new/delete的异同
- malloc/free和new/delete的异同
- new/delete与malloc/free的异同
- malloc/free和new/delete 区别
- 有了malloc/free为什么还要new/delete?
- C++学习:动态内存分配对象的new/delete运算符与函数malloc/free
- 百度笔试题:malloc/free与new/delete的区别(转)
- C语言基础——new/delete与malloc/free比较
- new/delete 与 malloc/free 的区别
- new/delete和malloc/free的区别-zz
- malloc与free和new/delete的区别
- 高质量c++(有了malloc/free 为什么还要new/delete )
- C++中malloc/free和new/delete 的使用
- c/c++ 复习基础要点01-const指针、指针函数 函数指针、new/delete与malloc/free区别与联系
- 4——new/delete 与 malloc/free 的区别是什么?(我的搜集,持续中。。。。)
- new/delete与malloc/free都干了哪些事
- new/delete 与 malloc/free的区别
- c++:尽量用new/delete代替malloc/free
- malloc/free和new/delete的区别