编译器错误 C2815

“operator delete”:第一个形参必须为“void *”,但使用的是“param”

任何用户定义的 operator delete 函数都必须采用 void * 类型的第一个形参。

以下示例生成 C2815:

// C2815.cpp
// compile with: /c
class CMyClass {
public:
   void mf1(int *a);
   void operator delete(CMyClass *);   // C2815
   void operator delete(void *);
};