- 赋值:是对已有变量的引用,无论怎么赋值最终指向的都是这个变量在内存中的地址,若变量是可变类型并发生改变,所有引用的值也随之变化,而地址不变
- 深拷贝:是对已有变量的递归拷贝,会产生一个新的地址,若已有变量内部值是可变类型,当这个变量改变,并不影响深拷贝后的结果
- 浅拷贝:对已有变量的最外层拷贝,也会产生新的地址,若已有变量内部是可变类型并发生改变,由于浅拷贝外层拷贝的原因,浅拷贝结果的值也会随之发生变化
- 若这个变量是个彻底的不可变类型(外层/内层都不可变)那么无论深拷贝还是浅拷贝不会产生新的地址,若外层是不可变类型浅拷贝后也不会产生新的地址
赋值/深拷贝/浅拷贝的区别?
最新推荐文章于 2022-12-26 18:03:28 发布