我有一个list<Myobj>包含一些Myobj实例的源,如果我将它分配给一个空list<MyObj>目标,内容方面究竟发生了什么?
Myobj实例是否通过浅拷贝复制到目标中?是复制构造函数吗?或者它们根本没有重复?
第一个列表中的所有对象都将复制到第二个列表中.最好不要在这里考虑"浅"和"深"复制.复制元素,副本的"深度"取决于类的复制构造函数或赋值运算符的作用.如果您的类型T是普通指针,那么指针将被复制,但不会被复制.没有特别的魔法.
请注意,有一些细微之处取决于作业的来源或RHS(感谢@mooingduck提醒我这一点).在C++ 11中,有些情况下RHS的内容可以移动到LHS中,在这种情况下根本没有复制.
| 归档时间: |
|
| 查看次数: |
78 次 |
| 最近记录: |