1.malloc和free属于C语言的库函数,
而new和delete属于C++的运算符。
2.malloc需要自己转换类型,而new不需要;
3.new申请内存的时候不需要申明内存大小,
而malloc申请内存时需要申明内存的尺寸;
4.malloc分配内存失败会返回NULL,而new申请内存失败会返回bac_alloc;
5.C++中new/delete允许被重载,而malloc和free不行;
6.new可以基于malloc使用,而malloc的实现不能调用new。
1.malloc和free属于C语言的库函数,
而new和delete属于C++的运算符。
2.malloc需要自己转换类型,而new不需要;
3.new申请内存的时候不需要申明内存大小,
而malloc申请内存时需要申明内存的尺寸;
4.malloc分配内存失败会返回NULL,而new申请内存失败会返回bac_alloc;
5.C++中new/delete允许被重载,而malloc和free不行;
6.new可以基于malloc使用,而malloc的实现不能调用new。