今天看代码看到的,类的公有成员函数,在未定义实例的情况下,通过把0转化为该类指针就可以调用。
#include <iostream>
using namespace std;
class T
{
public:
void print()
{
cout<<"class T"<<endl;
}
};
int main()
{
((T*)0)->print();
system("pause");
return 0;
}
我不明白为什么允许这样的调用……
如果要这样调用,把该函数定义成static不是更好?!