2011-12-17 28 views
5

Có thể quá tải lớp mới/xóa cụ thể được gọi khi mảng của đối tượng được tạo.Lớp mới/xóa cụ thể

class Foo; 

Foo* f = new Foo[10]; // calls overloaded new 
delete[] f; // calls overloaded delete 

Cảm ơn bạn.

+0

Xem http://stackoverflow.com/questions/7149461/why-should-one-replace-default-new-and-delete-operators và http://stackoverflow.com/questions/7149461/why -should-one-replace-default-new-và-delete-toán tử. –

Trả lời

8

Có, điều đó là có thể. Có hướng dẫn về quá tải newdeletehere và có ví dụ tốt về quá tải newdeletecho mảng, here.

class Myclass 
{ 
    public: 
     void* operator new(size_t); 
     void operator delete(void*); 

     void* operator new[](size_t); 
     void operator delete[](void*); 
}; 
Các vấn đề liên quan