[C++] operator new 与 new operator?
经常搞混淆 C++ 中的 operator new 与 new operator 这两个概念,所以整理一下。
operator new 是指那个全局的函数,只是用来进行原始内存分配(可以说和 malloc 所作的工作差不多),可以被重载。
new operator 是指 new-expression,就是我们平常见到的 new Object; 语法。它有两个工作:
- 调用上面的 operator new 进行原始内存分配;
- 调用 Object 的构造函数。