assign表示直接传递引用给属性值
retain表示将某个对象引用传递给属性值时,属性值会将引用计数加一,也就是说,属性会自己额外保留一份引用.
举例子说.
NSObject a= [[NSObject alloc] init];
classb.oneProperty = a;
[a release];
如果是assign的话,a被release之后,classb的oneProperty就不能再被使用.
如果是retian的话,a被release之后,classb的oneProperty就可以继续使用.
当然,像int这样的简单数据类型,只能用assign,因为它不是对象实例,不能retain.
iphone retain 和 assign的区别
原创
©著作权归作者所有:来自51CTO博客作者mb63e0703549da8的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
strong,weak,copy,retain和assign的区别
本来要自己写一篇的,看到mj老师的这篇很好,就果断复制过来了,再加上自己
strong weak copy assign retain -
centos7 怎么安装QQ
Ceph简介 Ceph是一种为优秀的性能、可靠性和可扩展性而设计的统一的、分布式文件系统。 准备工作准备3台主机,并且修改主机名(hostnamectl set-hostname xxx 后重启)IP地址
centos7 怎么安装QQ ceph centos7 CentOS root权限