1、在c++类中,默认的成员变量是private的,所以
liu.x=1;
liu.A::x=2;
是不可以访问的。
2、liu.A::x=2;在本类中和liu.x=2;是相同的意思,但是在有继承体就会不同。
class A
{
public:
int x;
};
class B: public A
{
public:
int x;
};
void main()
{
B liu;
liu.x=1;
liu.A::x=2;
}
很显然liu.x=1;是liu.B::x=1;这个意思。而liu.A::x=2;是将基类A中的x赋值为2,而不是B中的x。