
1、浅拷贝
什么是浅拷贝? (相当于给同一片空间取别名)
我们经过B拷贝A的过程后

由图我们可以清晰的得到,A和B指向的是同一片空间。
当我们执行B.str = 12;

很明显,A和B的值都改变了
代码验证
运行结果
当我们使用解析后
2、深拷贝
什么是深拷贝? (相当于复制一份A所指向的空间到另一份空间)
我们通过B拷贝A的过程后

由图我们不难看出,A和B是两片不同的空间,它们之间互不干扰
当我们执行B.str = 12; 后

明显只有B发生了改变;
代码验证
运行结果
总结:
1.浅拷贝可以让我们的空间得到反复使用,但有时候会出现重复释放空间的情况,所以在使用时需要谨慎。
2.深拷贝,虽然我们在解析空间时,基本不会出现问题,但它不利于我们对空间的反复使用。