linux c++编译器

您所在的位置:网站首页 weak翻译成平脚裤 linux c++编译器

linux c++编译器

2024-07-10 11:07| 来源: 网络整理| 查看: 265

编译器角度看C++复制构造函数

[C++对象模型]复制构造函数的建构操作 关于复制构造函数的简单介绍,可以看我以前写过的一篇文章C++复制控制之复制构造函数该文章中介绍了复制构造函数的定义、调用时机、也对编译器合成的复制构造函数行为做了简单说明...类的Bitwise copy 语意 《Effective C++》中说到: 如果你自己没声明,编译器就会为它声明一个copy构造函数、一个copy assignment操作符和一个析构函数。...实际上在《深度探索C++对象模型》中对编译器的行为并不是这样描述的。对于默认构造函数与复制构造函数,都需要类满足一定的条件时编译器才会帮你合成。那么需要满足些什么条件呢?...说实话这问题我也很疑惑,查看了许多资料,反复看了《深度探索C++对象模型》后,我最终这样认为:展现了Bitwise copy语意的类编译器不会为它写一个函数实体进行成员的复制。...显然,如果编译器对每个新定义的类对象不能正确地设置好初值,将导致严重的后果。所以编译器需要合成出一个复制构造函数来适当地初始化类对象的vptr。

57670


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3