Do the class specific new delete operators have to be declared static

c++

Solution

Yes it's required for them to be static. They are used to allocate memory for an object that does not yet exist hence there is no instance to refer to.

Problem

Is it required in standard for class specific new, new[], delete, and delete[] to be static. Can i make them non-static member operators. And why is it required for them to be static

Original source