5.2 拷贝和移动
默认情况下,我们可以拷贝对象,不论是用户自定义类型的对象还是内置类型的对象都是如此。拷贝的默认含义是逐成员的拷贝,即依次复制每个成员。例如,使用4.2.1节的complex:
因为赋值和初始化操作都是复制complex的全部两个成员,因此现在z1、z2和z3具有相同的值。
当设计一个类时,必须一直考虑对象是否会被拷贝以及如何拷贝的问题。对于简单的具体类型,逐成员的拷贝通常就是正确的拷贝语义。但对于某些复杂的具体类型,如Vector,逐成员拷贝不是正确的拷贝语义;而对于抽象类型,几乎总是如此。