Chinaunix首页 | 论坛 | 博客
  • 博客访问: 16462
  • 博文数量: 10
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 110
  • 用 户 组: 普通用户
  • 注册时间: 2014-04-04 22:35
文章分类

全部博文(10)

文章存档

2014年(10)

我的朋友

分类: iOS平台

2014-05-31 13:30:49

1.Copy或mutableCopy方法可以创建一个对象的副本(使用时需要实现NSCopying协议和NSMutableCopying协议)
Copy:创建的是不可变的副本(如NSString、NSArray、NSDictionary)
mutableCopy
:创建的时可变副本(如NSMutableString、NSMutableArray、NSMutableDictionary)
copy创建副本时,修改原始对象和副本对象两者互不干扰

2.深拷贝
内容拷贝,源对象和副本指向的是两个不同的对象
源对象引用计数器不变,副本计数器设置为1

3.浅拷贝
指针拷贝,源对象和副本指向的是同一个对象
对象的引用计数器加1,相当于做了一次retain操作

总结:只有不可变对象创建不可变副本(Copy)才是浅拷贝,其他的都是深拷贝
阅读(143) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~