提问人:Injenye Lojik 提问时间:11/3/2022 更新时间:11/3/2022 访问量:58
默认复制构造函数与无复制构造函数 [duplicate] 之间的区别
Difference between default copy constructor vs no copy constructor [duplicate]
问:
在 C++ 中,声明复制构造函数默认值与根本不声明复制构造函数之间有区别吗?对于可视化:
class A{
int x;
}
与
class B{
int x;
B() = default;
B(const B&) = default;
}
默认复制分配、默认移动构造函数和默认移动分配怎么样?如果我只是要将它们声明为默认值,那么我也可以根本不声明它们吗?
我在网上查了一下,一直找不到答案
答: 暂无答案
评论
B(const B&) = default;
禁止编译器生成隐式移动构造函数、隐式移动赋值,并最终还会禁止隐式复制赋值。q.v. 霍华德·辛南特(Howard Hinnant)解释博客页面底部的表格。B(B&&)
B& operator=(B&&)
B& operator=(B const&)