C 类继承基本概念解析
创始人
2024-06-22 11:11:42
0

C++编程语言的应用范围比较广泛,能够以一种简单灵活的方式帮助开发人员实现许多功能。在C++类继承中,一个派生类可以从一个基类派生,也可以从多个基类派生。 从一个基类派生的继承称为单继承;从多个基类派生的继承称为多继承。

例:单继承的定义

 

  1. class B:public  
  2. {   
  3. < 派生类新定义成员> 
  4. };  
  5. 多继承的定义  
  6. class C:public A,private B  
  7. {   
  8. < 派生类新定义成员>   
  9. }; 

注:如果在基类前不写访问控制符,则默认为私有的#t#

派生类共有三种C++类继承方式:公有继承(public),私有继承(private),保护继承(protected)

公有继承(public)

基类的公有成员和保护成员可以作为其派生类的公有成员和保护成员

派生类的成员函数可以访问基类中的公有成员和保护成员,无法访问基类中的私有成员

派生类的对象可以访问基类的公有成员

私有继承(private)

基类的公有成员和保护成员都作为其派生类的私有成员

在私有继承时,基类的成员只能由直接派生类访问,而无法再往下继承

保护C++类继承(protected)

基类的所有公有成员和保护成员都成为派生类的保护成员

基类的公有成员和保护成员只能被它的直接派生类成员函数或友元访问

构造函数和析构函数不能被继承

因此构造派生类的对象时,需要对基类数据成员.新增数据成员和成员对象的数据成员进行初始化

派生类构造函数的参数表部分既需要包含子类某些数据成员的初始值,也要包含基类的数据成员的初始值

如果基类没有默认的构造函数,那么派生类必须具有给基类构造函数提供参数的构造函数

派生类构造函数一般语法如下:

 

  1. 派生类名::派生类名(参数总表)  
  2. :基类名1(参数表1),...,基类名n(参数表n)  
  3. {  
  4. 初始化语句  

当基类有多个构造函数时,编译器根据派生类构造函数为基类构造函数提供的参数初始化列表中的参数类型来确定调用哪个构造函数

派生类的析构函数应当首先对派生类新增普通成员进行清理

然后对派生类新增的对象成员进行清理

最后是对所有从C++类继承来的成员进行清理

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...