![]() |
1
2
您提到要使用复制构造函数来创建新的
这需要您有一个现有的
此外,只要你只有一个复制构造函数,你就永远无法创建这样的实例(因为隐式默认构造函数将不再可用)。
解决方案是添加一个构造函数-要么是默认的构造函数(没有参数),要么是需要例如
或
(甚至两者兼而有之)。
只有在使用这样的构造函数创建实例后,才能使用复制构造函数:
|
![]() |
2
1
一旦你写了某种构造函数——在你的例子中是复制构造函数,
则删除默认构造函数,
因此,当您这样做时:
|
![]() |
neevek · 为什么move-ctor比copy-ctor慢? 7 年前 |
![]() |
DChiu28 · 对链表复制构造函数和赋值运算符使用copy()方法 7 年前 |
![]() |
M. Winter · 为什么在复制构造函数中分配联合成员会崩溃? 7 年前 |
![]() |
a06e · 常量数据成员阻止自动生成复制和移动因子? 9 年前 |
![]() |
ESipalis · C++重载运算符、构造函数等 9 年前 |
![]() |
ClimbingLung · 带对象的Qt容器 10 年前 |