标签: c++
是否可以重载在创建对象数组时调用的特定于类的new / delete。
class Foo; Foo* f = new Foo[10]; // calls overloaded new delete[] f; // calls overloaded delete
谢谢。
答案 0 :(得分:8)
是的,有可能。有一个关于重载new和delete here的教程,有一个很好的例子,为数组重载new和delete ,here。
new
delete
class Myclass { public: void* operator new(size_t); void operator delete(void*); void* operator new[](size_t); void operator delete[](void*); };