一般而言,C++的内存配置操作和释放操作时这样的:
2. 调用Foo::Foo()构造对象内容
delete算式也内含两阶段操作:
1. 调用Foo::~Foo()将对象折构
2. 调用::operator delete释放内存
class Foo{ ... };
Foo* pf=new Foo; //配置内存,然后构造对象
delete pf; //将对象折构,然后释放内存
其中new算式内含两阶段操作:
1. 调用::operator new 配置内存2. 调用Foo::Foo()构造对象内容
delete算式也内含两阶段操作:
1. 调用Foo::~Foo()将对象折构
2. 调用::operator delete释放内存
C++的内存配置操作是::operator new(),内存释放操作是::operator delete()。这两个全局函数相当于C的 malloc() 和 free() 函数。