I came across this problem when I was reading More Effective C++. It's in Item 27. The class HeapTracked is used as a base class for the heap tracking function, in other words, for judging whether this object is created in heap or not. In the demo, operator new and operator delete is given. Then how to write operator new[] and operator delete[] accordingly?