浅拷贝就是把原对象的每一个成员字段的值都拷贝到新对象中去。
这对于普通的字段是可以的,但是对于指针字段未必成立,因为指针所指的那段内存是动态分配的,并不会自动得到拷贝。这就导致新对象与原对象中的字段,全都指向同一块动态分配的内存,这种效果并不是我们所期望的,由系统默认提供的拷贝构造函数与赋值运算符执行的都是浅拷贝。
深拷贝不仅拷贝原对象的每一个字段,而且还将动态分配给该字段的内容也一样复制过来。为此我们必须编写拷贝构造函数并且重载运算符,否则还会像浅拷贝一样是新老对象的指针字段都指向同一块内存。