C++私有成员变量被对象直接访问

C++访问控制

      关键字private,它描述了对类成员的访问控制。使用类的对象方法可以直接访问私有成员函数和变量。类的对象即实例只能通过公共成员函数来访问私有变量和私有成员函数。因此公有成员函数成为对象的私有变量访问的桥梁。

      在c++中,在类的成员函数的参数为此类类型时,可以通过类类型的对象直接访问私有成员变量。或者在成员函数中使用临时对象来直接访问私有变量。

    

class test
{
private:
     int a ;
     int b ;
public:
     test(int x,int y)
     {
       a = x;
       b = y;
     };
     test(){a = 0;b = 0;};
     test add(const test& one)const
     {
          test tmp;
          tmp.a = a + one.a;   //临时对象tmp直接使用了私有变量。形参对象One也可以直接使用临时对象
          tmp.b = b + one.a;
          return tmp;
     };

     void show()
     {cout<<a<<" "<<b<<endl;};


}
 

test two(1,2);
two.a = 3; //这时候将不会编译通过。因为只能在类的成员函数内,对象可以直接使用私有变量。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值