易百教程

20、new()malloc() 有什么区别?

new是一个预处理器,而 malloc() 是一个函数。
使用new时无需分配内存,但在 malloc() 中必须使用 sizeof()
new将新内存初始化为 0,而 malloc() 在新分配的内存位置给出随机值。
new运算符分配内存并调用构造函数进行对象初始化,malloc() 函数分配内存但不调用构造函数进行对象初始化。
new运算符比 malloc() 函数快,因为运算符比函数快。