-
new是关键字/操作符,而malloc是函数
-
new一个对象的时候,不但分配内存,而且还会调用类的构造函数(当然如果类没有构造函数,系统也没有给类生成构造函数,那没法调用构造函数了)
-
在某些情况下,“A *pa = new A()”可以把对象某些成员变量(如m_i)设置为0,这是new的能力之一,malloc没这个能力
同理,delete与free的区别也就比较明显:delete不但释放内存,而且在释放内存之前会调用类的析构函数(当然必须要类的析构函数存在)
标签:malloc,调用,C++,析构,new,构造函数 From: https://www.cnblogs.com/dh2021/p/16837446.html