c++ - 带有附加类复制构造函数的菱形继承
问题描述
所以我最近想知道如果我们有一个基类A
实际上被B
and继承,类的复制构造函数会是什么样子C
,在哪里B
和C
被继承,D
并且D
被继承E
。
所以我有点困惑。的复制构造函数是否应该在其初始化列表中D
仍然具有基类的 ( ) 构造函数,还是现在的工作?我是否正确可以非虚拟继承?A
E
E
D
解决方案
是的,A
应该还在初始化列表中,E
不需要D
虚拟继承。施工顺序应为:
A() --> B() --> C() --> D()
推荐阅读
- html - 如何格式化以下内容以使用 ::ng-deep
- erlang - 为什么 Erlang/BEAM VM 中的数学运算这么慢?
- vue.js - 更改语言环境时,vue i18n 不翻译消息
- core-data - 如何在 Core Data/Cloud Kit App 中找到并删除正在创建 CDMR 同步请求的内容?
- javascript - 从客户端调用服务器端按钮单击功能
- python - 如何在没有双引号的情况下获得 ansible 输出
- flutter - 将 ListView 转换为 ListView.builder
- hive - MSCK REPAIR TABLE ADD/DROP/SYNC 选项不可用
- jq - 当前正在执行的命令的语言参考
- cupy - AttributeError:模块 'cupy' 没有属性 'append'