深拷贝和浅拷贝

拷贝分为深拷贝和浅拷贝 

  •  浅拷贝:不产生新的对象,直接指向原有对象
  • 深拷贝:产生新的对象,其内容是原有对象的内容
 
拷贝:NSCopy、NSMutableCopy
  •      NSCopy拷贝出的结果是不可变对象,跟其接受类型没有关系,跟其传入类型也没有关系,NSMutablecopy拷贝的结果是可变对象,跟其传入的类型没有关系,但是会受其接收类型的影响, 
  • 当使用NSCopy复制一个不可变对象时,其行为是浅复制,其余情况都是深拷贝
  • 当使用NSMutablecopy时,是深拷贝
原文地址:https://www.cnblogs.com/banchuangshuying/p/6305711.html