- 分配内存的位置:new在自由存储区,malloc在堆区;
- 内存分配失败:new抛出异常,malloc返回NULL;
- 分配内存大小:new编译根据类型计算得出,malloc显示指定字节数;
- 处理数组:new处理数组的new版本new[],malloc需要用户计算数组的大小后进行内存分配;
- 已分配内存的扩张:new不支持,malloc使用realloc完成;
- 分配内存时内存不足:new可以指定处理函数或重新制定分配器,malloc无法通过用户代码进行处理;
- 是否可以重载:new可以,malloc不可以;
- 构造函数与析构函数:new调用,malloc不调用;
new和malloc 区别
最新推荐文章于 2024-08-08 18:37:26 发布