C++派生类对象访问基类的protected成员

《C++ Primer》上有这么 一句话令人费解:派生类如果要访问基类protected成员只有通过派生类对象,派生类不能访问基类对象的protected成员。”而实际上的意思是:

只有在派生类中才可以通过派生类对象访问基类的protected成员。

 

01.//只有在派生类中才可以通过派生类对象访问基类的protected成员。  
02.#include <iostream>  
03.#include <vector>  
04.#include <iterator>   
05.#include <algorithm>  
06.#include <numeric>  
07.using namespace std;  
08.  
09.class Base   
10.{  
11.protected:  
12.    int i;  
13.          
14.};  
15.  
16.class Derived: public Base  
17.{     
18.    public:  
19.    void fun(Derived d)  
20.    {  
21.        d.i = 3;        //只有在派生类中才可以通过派生类对象访问基类的protected成员。  
22.    }  
23.};  
24.  
25.int main()  
26.{  
27.    Derived derived;  
28.//  derived.i = 3;       //只有在派生类中才可以通过派生类对象访问基类的protected成员。  
29.    return 0;             
30.}  


 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值