malloc和 new的区别
2013-07-17 08:27
155 查看
malloc和new有以下不同:
new、delete是操作符,可以重载,只能在c++中使用。
malloc、free是函数,可以覆盖,c、c++中都可以使用。
new可以调用对象的构造函数,对应的delete调用相应的析构函数。
malloc仅仅负责分配内存,free仅仅回收内存,并不执行构造和析构函数。
new、delete返回的是某种数据类型指针,malloc、free返回的是void指针。
注意:malloc申请的内存空间要用free释放,而new申请的内存空间要用delete释放,不要混用。因为两者实现的机理不同。
new、delete是操作符,可以重载,只能在c++中使用。
malloc、free是函数,可以覆盖,c、c++中都可以使用。
new可以调用对象的构造函数,对应的delete调用相应的析构函数。
malloc仅仅负责分配内存,free仅仅回收内存,并不执行构造和析构函数。
new、delete返回的是某种数据类型指针,malloc、free返回的是void指针。
注意:malloc申请的内存空间要用free释放,而new申请的内存空间要用delete释放,不要混用。因为两者实现的机理不同。
相关文章推荐
- malloc/free与new/delete的区别
- new和malloc的区别[转载]
- new和malloc区别和联系
- new/delete 和malloc/free 的区别
- 细说new与malloc的10点区别
- 细说new与malloc的10点区别
- malloc/free与new/delete的区别
- new/delete和malloc/free的区别
- VC++中GlobalAlloc()、malloc()和new()函数之间区别
- C++基础学习笔记----第十四课(new和malloc的区别、单例模式等深入)
- Malloc与new的区别
- new/delete 与malloc/free 区别与联系
- globalalloc、malloc和new的区别
- new,malloc,delete,free的区别与联系
- new与malloc的10点区别
- malloc/free 与new/delete的区别
- 【转帖】C++内存分配秘籍—new,malloc,GlobalAlloc的区别与详解
- C++基础--malloc和new的区别
- C++中new和malloc的区别中delete和delete[]的区别
- malloc和new的区别