三种继承方式

Posted 邓涛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了三种继承方式相关的知识,希望对你有一定的参考价值。

1、公有继承

基类的public成员被继承到派生类的public访问限定符下,基类的protected成员被继承到派生类

的protected访问限定符下,而基类的private成员被继承到派生类的不可见位置,无法直接访问。

 

2、保护继承

基类的protected成员和public成员都被继承到派生类的protected访问限定符下,而private成员

被继承到不可见位置,无法直接访问。

 

3、私有继承

基类的public成员和protected成员都被继承到派生类的private访问限定符下,对于基类的private

成员同样被继承到派生类的不可见位置,无法直接访问。

 

4、Is a 和 Has a关系

使用私有继承,基类的公有成员和保护成员都将成为派生类的私有成员。这意味着基类方法将不会成

为派生对象公有接口的一部分,但可以在派生类的成员函数中使用它们。这种不完全继承是Has a关系

的一部分,使用包含关系(成员对象)也可以实现Has a关系,因为我们只能够调用成员对象中的共有

方法,而成员对象只能够使用成员函数进行调用,而不会成为外部可操作的对象。

使用公有继承,基类的公有方法将成为派生类的公有方法。简而言之,派生类将继承基类的接口,这是

is-a关系的一部分。

 

参考: 《慕课网》

 

以上是关于三种继承方式的主要内容,如果未能解决你的问题,请参考以下文章

三种继承方式

C++中设计三种不同继承方式的意义

三种继承方式和三种访问权限

继承的三种方式

继承的三种方式

C++三种继承方式