C++继承体系

本文深入探讨C++的继承机制,包括继承的概念、定义形式、三种继承方式的区别及其应用。通过实例展示了如何使用public、protected、private继承,并解释了继承体系中的成员函数调用顺序、作用域规则、赋值兼容原则,以及静态成员和菱形继承问题。重点讨论了菱形继承带来的数据冗余问题及解决方案——虚拟继承。
摘要由CSDN通过智能技术生成

继承
一.继承的概念
在C++语言中,继承作为几大重要特征之一,具有相当重要的意义。继承体系运行程序员在保持原有类的基础上,进行扩展,增加新的功能。这样产生的新的类,我们称之为派生类或者子类,而原有的类称之为父类或者基类。它是面向对象程序设计使用代码复用的重要手段,体现了面向对象程序设计的层次结构。
二.定义形式
 classDeriverClassName:acess-labelBaseClassName
1.DeriverClassName:派生类名字
2.:acess-label :继承形式,这里有三种继承形式:(1)public;(2)privated;(3)protected,当使用class时没有给出继承形式时,编译器默认为private,使用struct时,默认为public。
3.BaseClassName:基类名字
三.三种继承方式的区别
1.public(公有)继承
  当时用public继承时,派生类继承基类中的公有和保护成员,并且这些成员保持原有属性。可以通过派生类的子类进行访问。
2.protected(受保护)继承
此时派生类同样继承了基类中的公有以及受保护的成员,但是基类中受保护的成员无法通过派生类的对象进行访问,只能通过派生类的成员函数或者友元函数访问,私有成员属性不变。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值