C++ 派生类访问属性
【摘要】
C++ 派生类访问属性
保护继承派生类成员的访问属性总结
保护继承
由 protected 声明的成员称为 “受保护的成员”, 或简称 “保护成员”. 从用户的角度来看, 保护成员等价于私...
保护继承
由 protected 声明的成员称为 “受保护的成员”, 或简称 “保护成员”.
从用户的角度来看, 保护成员等价于私有成员. 保护成员可以被派生类的成员函数引用.
派生类成员的访问属性
4 种访问属性:
- 公用的: 类内和类外都可以访问
- 受保护的: 类内可以访问, 类外不能访问, 下一层的派生类可以访问
- 私有的: 类内可以访问, 类外不能访问
- 不可访问的: 类内和类外都不能访问
继承方式 | 基类中的成员 | 访问属性 |
---|---|---|
公用继承 (public) | 公用成员和保护成员 | 在派生类中保持原有访问属性 |
公用继承 (public) | 私有成员 | 仍为基类私有, 派生类不可访问 |
私有继承 (private) | 公用成员和保护成员 | 在派生类中成了私有成员 |
私有继承 (private) | 私有成员 | 仍为基类私有, 派生类不可访问 |
受保护的继承 (protected) | 公用成员和保护成员 | 在派生类中成了保护成员 |
受保护的继承 (protected) | 私有成员 | 仍为基类私有, 派生类不可访问 |
总结
- 如果在多级派生时都采用公用继承方式, 那么直到最后一级派生类都能访问基类的公用成员和保护成员
- 如果采用私有继承的方式, 经过若干次派生之后, 基类的所有的成员已经变成不可访问的了
- 如果采用菜户继承方式, 在派生类外无法访问派生类中的任何成员. 而且经过多次派生后, 人们很难清楚的记住哪些成员可以访问, 哪些成员不能访问, 很容易出错
注: 实际开发中, 我们通常使用的是公共继承.
文章来源: iamarookie.blog.csdn.net,作者:我是小白呀,版权归原作者所有,如需转载,请联系作者。
原文链接:iamarookie.blog.csdn.net/article/details/116728189
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)