4.5_私有派生和保护派生

除了公有派生,C++也支持私有派生和保护派生。

class B: private A {};
class C: protected A {};
基类成员派生方式
公有派生私有派生保护派生
私有成员不可访问不可访问不可访问
保护成员保护私有保护
公有成员公有私有保护

一般情况下都应使用公有派生。

这个也很好理解,就是什么派生过后更低一级的就变成这一级的了,不过确实了解就行,一般还是公有派生常用,另外几种派生过后与原来的类的权限有一些不同,也是徒增了开发难度,要注意更多的权限问题了。

在所有派生方式中,私有成员都不能被访问到,私有成员只能用于基类使用,想要能够继承下去同时不想要其他类能访问到,就可以使用保护成员。
保护继承和公有继承的区别就是保护继承会把继承过来的公有成员转变为保护成员。


层次概念是计算机的重要概念。通过继承(inheritance)的机制可对类(class)分层,提供类型/子类型的关系。C++通过类派生(class derivation)机制来支持继承。

被继承的类型称为基类(base class)或超类(superclass),新产生的类为派生类(derived class)或子类(subclass)。基类和派生类的集合称作类继承层次结构(hierarchy)。如果基类和派生类共享相同的公有接口,则派生类被称作类的子类型(subtype)。

派生反映了事物之间的联系,事物的共性与个性之间的关系。从工作量上看,工作量少,派生类中重复的部分可以从基类继承来,不需要再单独编程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值