1.new是运算符,而malloc是库函数 2.new可以重载,可以自定义内存分配策略,甚至不做内存分配,甚至分配到非内存设备上.而malloc不能. 3.new在用于定义一个新的非内部对象的时候,默认直接调用构造函数,在delete的时候,默认调用析构函数: 但是,编译器无法约束malloc库函数来调用构造函数,只能通过类似于Initialize()初始化函数来进行初始化. 4.void * malloc(size_t size); malloc需要知道申请的内存空间的字节数,并且将返回的vo…