当前位置: 首页 > news >正文

C++的多重继承

派生类都只有一个基类,称为单继承(Single Inheritance)。除此之外,C++也支持多继承(Multiple Inheritance),即一个派生类可以有两个或多个基类。

多继承容易让代码逻辑复杂、思路混乱,一直备受争议,中小型项目中较少使用,后来的 Java、C#、PHP 等干脆取消了多继承。

多继承的语法也很简单,将多个基类用逗号隔开即可。例如已声明了类A、类B和类C,那么可以这样来声明派生类D:

class D: public A, private B, protected C{//类D新增加的成员
}

D 是多继承形式的派生类,它以公有的方式继承 A 类,以私有的方式继承 B 类,以保护的方式继承 C 类。D 根据不同的继承方式获取 A、B、C 中的成员,确定它们在派生类中的访问权限。

多继承下的构造函数

多继承形式下的构造函数和单继承形式基本相同,只是要在派生类的构造函数中调用多个基类的构造函数。以上面的 A、B、C、D 类为例,D 类构造函数的写法为:

D(形参列表): A(实参列表), B
http://www.lryc.cn/news/150749.html

相关文章:

  • ZooKeeper与Paxos
  • Cargo 静态编译
  • 【多线程】有两个线程都能访问n,初始时n为0,⼀个线程执⾏n++,n+=2,另⼀个线程执⾏n+=3,当两个线程都执行完后n可能的值
  • Jtti:如何通过宝塔面板快速安装WordPress博客源码?
  • Windows右键添加用 VSCODE 打开
  • 达梦数据库管理用户和创建用户介绍
  • 使用python,生成数字在图片上的验证码
  • 阿晨的运维笔记 | CentOS部署Docker
  • 自动化运维:Ansible基础与命令行模块操作
  • 深度学习6:自然语言处理-Natural language processing | NLP
  • Mysql多表操作
  • 【leetcode 力扣刷题】数学题之计算次幂//次方:快速幂
  • 【核心复现】基于改进灰狼算法的并网交流微电网经济优化调度(Matlab代码实现)
  • Cannal监听binlog
  • 从零开发JavaWeb入门项目--十天掌握
  • 数据结构——哈希表
  • Kafka3.0.0版本——手动调整分区副本示例
  • 玩客云 线刷Armbian 搭配Alist 阿里云盘 Jellyfin NovaVideoPlayer搞电视墙
  • 9月1日,每日信息差
  • 【大数据】Flink 详解(六):源码篇 Ⅰ
  • ShardingSphere——弹性伸缩原理
  • Linux项目自动化构建工具-make/Makefile
  • Python爬虫实战:自动化数据采集与分析
  • 视频智能分析平台EasyCVR安防视频汇聚平台助力森林公园防火安全的应用方案
  • 跨境做独立站,如何低成本引流?
  • leetcode55.跳跃游戏 【贪心】
  • 探秘C语言扫雷游戏实现技巧
  • Leetcode112. 路径总和
  • 生成12位短id,自增且不连续,永不重复,不依赖数据库
  • Zip压缩文件夹php打包函数代码