码迷,mamicode.com
首页 > 移动开发 > 详细

iOS--合理定义对象的引用类型strong/weak/assign/copy

时间:2015-07-19 00:12:57      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:ios   strong   weak   asign   copy   

在ios中一定要合理使用对象的引用类型:

最佳原则:在ios中任何一个对象只有一个强引用

使用weak的情况:
1、懒加载的方式需要使用weak修饰:
如@property(nonatmic,weak) IBOutlet UILabel *lbl;
备注:所谓的懒加载就是指控件通过IB拖到根视图中,再通过连线的方式与ViewController中的属性对应起来。此种方式就相当于self.view执行了addSubview()方法,即self.view对该控件做了强引用,那么在viewController中只需要做弱引用即可。

使用strong的情况:
1、非懒加载(需要通过代码来alloc+init)
eg.未将控件拖到IB中,在h文件中声明了控件,在m文件中初始化了这个控件对象。此种情况需要在声明的时候,使用强引用。即:@property(nonatmic,strong) IBOutlet UILabel *lbl; 对应的后面应用有其初始化方法:lbl = [[UILabel alloc] init];

使用assign的情况:
1、对int、double、float、BOOL 等数值型对象的定义。
eg.@property(nonatomic,assign) BOOL tf;

使用copy的情况:
1、对于NSString类型的对象定义:
eg.@property(nonatomic,copy) NSString *strName;

版权声明:本文为博主原创文章,未经博主允许不得转载。

iOS--合理定义对象的引用类型strong/weak/assign/copy

标签:ios   strong   weak   asign   copy   

原文地址:http://blog.csdn.net/wanggsx918/article/details/46947739

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!