K.i.s.s.cross. 发表于 2013-5-20 20:17:38

c++中访问权限控制是针对类的

很多人可能入门的时候就会对类和对象的概念分不清。比如
[*]class X
[*]{
[*]int a;
[*]public:
[*]int fun(X& x)
[*]{
[*]return a+x.a;
[*]}
[*]};
[*]int main(void)
[*]{
[*]X y;
[*]X x;
[*]x.fun(y);
[*]return 0;
[*]}



有人可能会理解成为成员函数fun可以访问类中私有的数据a,但是对于为什么x.a也可以访问就犹豫不解了。如果参数中强制使用this指针,他很早就会发现成员函数内部 对象/引用/指针可以访问私有数据,然后就会进一步想为什么,然后就会发现c++中访问权限控制是针对类的,而不是针对对象的。这样就不会有类似 成员函数内部x.a合法 的不解了。






页: [1]
查看完整版本: c++中访问权限控制是针对类的