Azurewarth 2015-09-29 05:20 采纳率: 0%
浏览 1419

编译器合成默认构造函数问题

最近看《深度探索C++对象模型》,遇到了一个疑问。
在4种情况下会合成nontrivial构造函数,那其他情况到底是【没有合成构造函数】还是合成了无用的【trivial构造函数】?
虽然这两者的外在表现一样,但内部这个构造函数是否被合成?
P40框内说合成,P47结尾又说没有被合成。

书中还有一句“Default constructor的合成操作只有在constructor真正需要被调用时才会发生”,那么对以下语句是否合成了构造函数?

if(condi) {
    A* a = new A;
}else {
    B* b = new B;
}
  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-09-20 17:47
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

悬赏问题

  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊