利用宏替换绕过 C++ 成员访问控制的一个小把戏:在包含头文件或定义类之前,先用 #define 把 private 替换成 public,原本私有的成员函数就可以在类外直接调用。
#define private public
class a
{
private:
void p(){cout<<"43543";}
};
int main(int argc, char *argv[])
{
a z;
z.p();
return 0;
}