C++继承体系下类中属性的能见度总结

在面向对象技术下类中成员的可见性以及访问控制程度总是让程序员发懵。特别是初学者。下面将对其做一总结。

1.横向来看,比较简单。类中成员的访问控制程度有三种:public,private,proteced。

public:完全向外部公开。

protected:类中以及派生类均可访问,不能再类外访问。

private: 仅本类中可以访问,类外不能访问。友元除外。

横向的较简单。一旦涉及到纵向的继承后,各种继承方式下的访问控制将很容易搞错。

2.纵向,一定要区分好下面这两种。

第一:父类的成员在子类中的外部能见度,是指被子类继承的
父类成员在子类中的(外部)访问控制程度,也分为
public、private、protected 三种。
第二:父类的成员在子类中的内部能见度,是指被子类继承的
父类成员在子类中定义的方法中的内部访问控制程度,
分为Y(可访问)和N(不可访问)两种。

记住此图,就可以理清复杂的可见性问题了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值