OC语法--问NSString属性声明中的copy和retain具体区别
来源:互联网 发布:mac如何打罗马数字 编辑:程序博客网 时间:2024/05/02 00:54
问NSString属性声明中的copy和retain具体区别
copy是将源对象release然后新对象copy在付给源对象
retain是将源对象release然后新对象retain再付给源对象
根本区别就是对象进行深拷贝时copy要开辟新的存储空间,浅拷贝时效果相同。引用计数方面retain是源对象引用计数加1,copy当
是浅复制时源对象引用计数加1,深复制时源对象引用计数不变,新对象引用计数加1.
NSString *str = @"hello";
// copy原模原样的复制
NSMutableString *strM = [str copy];
// [strM appendString:@" 123"];是不能运行的 因为copy只是原样复制的,内存地址是一样的。并不能认为换了类型指向了他,他就是这个东西
深复制:要变
浅复制:不变
0 0
- OC语法--问NSString属性声明中的copy和retain具体区别
- NSString属性声明中的copy和retain区别
- NSString属性声明中的copy和retain区别
- NSString属性声明中的copy和retain区别
- NSString属性声明中的copy和retain区别
- NSString属性声明中的copy和retain区别
- NSString属性声明中的copy和retain区别
- NSString属性声明中的copy和retain区别
- NSString属性声明中的copy和retain区别
- NSString属性声明中的copy和retain区别
- NSString copy和retain属性
- 属性特性copy和retain的区别
- NSString 的copy和retain
- @property 属性中retain 和copy 的具体实现
- 使用COPY声明NSSTRING属性
- 使用COPY声明NSSTRING属性
- 声明NSString属性用 Copy 与 strong 的区别
- 使用copy与strong声明NSString属性的区别
- ubuntu下Qt cannot find -lGL错误的解决方法
- 《目送》读后感(附抄“紫杜鹃、江湖台北”)
- svn commit-email自动发送邮件乱码问题的解决,以及自己写svn同步邮件脚本
- PHP学习笔记第【7】天(2014.11.07)——javascript学习
- Android LayoutInflater原理分析,带你一步步深入了解View(一)
- OC语法--问NSString属性声明中的copy和retain具体区别
- 第八周 项目三(1):分数类中的运算符重载
- 如何修改mysql 5.6.24解压缩版(免安装版或zip版)字符编码
- IIS中配置WCF站点
- sicily 1194 message blood之通过篇
- 单例模式的七种写法
- 点分治:统计长度不大于K的路径条数
- [LeetCode] Remove Duplicates from Sorted Array
- 构造器和多态