黑马程序员技术交流社区
标题:
retain和strong、assign和weak的区别
[打印本页]
作者:
iosCoder
时间:
2014-12-22 00:42
标题:
retain和strong、assign和weak的区别
retain和strong、assign和weak的区别是什么,代码说明!
作者:
se7ven
时间:
2014-12-22 11:02
都是在.h文件中做修饰符的
assign,是作为修饰非OC对象的
其他三个都是修饰对象的。
retain是在非ARC机制中,作为release旧值,retain新值操作。
strong和weak是在ARC机制中使用的,strong替换了retain,
@property(nonatomic,assign)int age;//非对象
@property(nonatomic,strong)Car *car;//ARC
@property(nonatomic,retain)Dog *dog;//非ARC,手动内存管理
@property(nonatomic,weak)Book *book;//weak一般使用在循环引用的,如果两个对象相互引用的话,一方用strong,另一方就用weak。
总结的不好,希望你能理解。
复制代码
作者:
se7ven
时间:
2014-12-22 11:04
se7ven 发表于 2014-12-22 11:02
assign修饰非OC对象,仅仅是赋值
作者:
iosCoder
时间:
2014-12-22 13:06
se7ven 发表于 2014-12-22 11:02
学习了。。。。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2