我的类A
显式地实现了它的复制构造函数和它的复制赋值。
复制分配此类元素的向量时使用哪种复制机制?
这是:
vector<A> a1, a2(5);
a1 = a2;
是否要对A
的所有新元素使用 的复制构造函数a1
,并将 的元素a2
作为输入?
或者它会a1
为元素腾出空间,然后将A
'soperator=
与元素一起a2
用作输入?
如果a1
在分配之前不为空怎么办?
甚至指定了吗?
我班级的复制构造函数并operator=
没有完全做同样的事情(这是不好的做法吗?到目前为止主要是测试东西)。看起来复制构造函数被调用了,但我想知道它是否可以保证是这样,或者在这种情况下恰好是这样。