#include<iostream.h>
class X{
private:
int x;
public:
X() {}
void func() {
cout<<"In func()"<<endl;
}
};
int main(void)
{
X *x=NULL;
x->func();
return 0;
}
我对o / p感到非常惊讶,有人可以解释一下x如何访问func()。
答案 0 :(得分:4)
x->func()
只是表示您使用func
指针为this
来调用x
。所以在这种情况下它是NULL
从func
开始,您没有使用任何成员变量,因此您没有使用this
。
无论如何,这是不好的,正如Bo Persson指出的那样,未定义的行为。你不应该这样做。