首页
Preview

使用new运算符相对于函数malloc有哪些优点?

使用 NEW 而不是 MALLOC 的优点是:

1.可以重载 operator new,但不能重载 malloc。

2.operator new 是一个运算符,而 malloc 是一个函数。

3.operator new 如果没有足够的内存会抛出异常,而 malloc 返回空指针。

4.operator new 构造对象(调用对象的构造函数),而 malloc 不会。

5.operator new/new[] 必须与 operator delete/delete[] 匹配以释放内存,而 malloc() 必须与 free() 匹配以释放内存。

6.operator new() 需要指定要分配的对象数量,而 malloc 需要指定要分配的总字节数。

7.malloc() 返回 void*,需要显式转换为所需的类型,但 new 返回适当的类型。

本文最初发表于 https://www.pkengineering.xyz,于2020年8月11日发布。

版权声明:本文内容由TeHub注册用户自发贡献,版权归原作者所有,TeHub社区不拥有其著作权,亦不承担相应法律责任。 如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

点赞(0)
收藏(0)
thorepet
没有你想不到,只有你做不到……

评论(0)

添加评论