我有一个类,我正在重载new和删除(这些从内存池获取和返回内存).令我感到沮丧的是,我重载的类仍然在调用delete重载函数之前调用了析构函数.我怎么能阻止这个?
class Message
{
~Message() { ... }
void* operator new(std::size_t sz) { ... }
void operator delete(void* ptr) { ... }
};
Run Code Online (Sandbox Code Playgroud)
编辑:
我认为类的成员会被破坏但是破坏者不会释放记忆,这是正确的; delete函数拥有这个责任,在这种情况下,我可以阻止内存被释放?
结果: Penny拒绝了内存和构造/销毁的分配/释放是单独的项目.我现在有空的析构函数和重载的新/删除.