小编Irf*_*fan的帖子

即使该类不包含数据,C++ 14是否仍会生成默认函数?

经过16年的中断,我正在重读Scott Meyers的Effective C++.虽然我还没有阅读最新的C++标准,但是我注意到自从第二版Effective C++编写以来C++发生了变化.在他的书的第三版中,Scott Meyers提到即使你有一个空类,意味着没有什么可以初始化或分配,C++编译器仍然会生成至少3个默认函数,即默认构造函数,默认复制构造函数,赋值运算符,可能还有其他一些函数.根据Meyers先生的说法,以下代码将导致产生上述功能.

class Empty {}
Empty E1; // Default constructor.
Empty E2 ( E1 ); // Default copy constructor. 
E1 = E2; // Default assignment operator. 
Run Code Online (Sandbox Code Playgroud)

考虑到没有什么可以初始化,因为类是空的,C++是否仍然为所述函数生成某种代码?

c++ c++14

6
推荐指数
1
解决办法
358
查看次数

标签 统计

c++ ×1

c++14 ×1