收藏 分享(赏)

C++派生类成员的访问属性.doc

上传人:HR专家 文档编号:11898581 上传时间:2021-03-26 格式:DOC 页数:2 大小:23.50KB
下载 相关 举报
C++派生类成员的访问属性.doc_第1页
第1页 / 共2页
C++派生类成员的访问属性.doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、既然派生类中包含基类成员和派生类自己增加的成员,就产生了这两部分成员的关系和访问属性的问题。在建立派生类的时候,并不是简单地把基类的私有成员直接作为派生类的私有成员,把基类的公用成员直接作为派生类的公用成员。实际上,对基类成员和派生类自己增加的成员是按不同的原则处理的。具体说,在讨论访问属性时,要考虑以下几种情况:. 基类的成员函数访问基类成员。. 派生类的成员函数访问派生类自己增加的成员。. 基类的成员函数访问派生类的成员。. 派生类的成员函数访问基类的成员。. 在派生类外访问派生类的成员。. 在派生类外访问基类的成员。对于第(1)和第(2)种情况,比较简单,基类的成员函数可以访问基类成员,

2、派生类的成员函数可以访问派生类成员。私有数据成员只能被同一类中的成员函数访问,公用成员可以被外界访问。第(3)种情况也比较明确,基类的成员函数只能访问基类的成员,而不能访问派生类的成员。第(5)种情况也比较明确,在派生类外可以访问派生类的公用成员,而不能访问派生类的私有成员。对于第(4)和第(6)种情况,就稍微复杂一些,也容易混淆。譬如,有人提出这样的问题: 基类中的成员函数是可以访问基类中的任一成员的,那么派生类中新增加的成员是否可以同样地访问基类中的私有成员; 在派生类外,能否通过派生类的对象名访问从基类继承的公用成员。这些牵涉到如何确定基类的成员在派生类中的访问属性的问题,不仅要考虑对基

3、类成员所声明的访问属性,还要考虑派生类所声明的对基类的继承方式,根据这两个因素共同决定基类成员在派生类中的访问属性。前面已提到,在派生类中,对基类的继承方式可以有public(公用的)、private (私有的)和protected(保护的)3种。不同的继承方式决定了基类成员在派生类中的访问属性。简单地说可以总结为以下几点。1) 公用继承(public inheritance)基类的公用成员和保护成员在派生类中保持原有访问属性,其私有成员仍为基类私有。2) 私有继承(private inheritance)基类的公用成员和保护成员在派生类中成了私有成员,其私有成员仍为基类私有。3) 受保护的继承(protected inheritance)基类的公用成员和保护成员在派生类中成了保护成员,其私有成员仍为基类私有。保护成员的意思是,不能被外界引用,但可以被派生类的成员引用。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 网络科技 > 其他相关文档

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报