illegal to overload member 'operator delete' with different number of formal arguments
A class defined two versions of the operator delete function. A given class can define only one.
The following is an example of this error:
class C
{
void operator delete(void *);
void operator delete(void *, size_t); // error
};