简单总结了一下malloc和new的区别,希望对大家有所帮助,不足之处,请大家批评指正
malloc和new主要有以下区别:
1.malloc是C/C++库函数,与free搭配使用,new是C++运算符,与delete搭配使用;
2.malloc函数原型是void*malloc(),默认返回值是void*,因此返回时会进行强制转换,而new自动返回,不需要进行强制转换;
3.malloc申请内存空间,需要程序员手动分配大小,而new申请内存空间由编译器自动分配大小;
4.malloc只是申请内存空间,不会进行初始化操作,而new申请内存空间会进行初始化操作,调用构造函数,释放时会调用析构函数;