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

iOS 属性修饰符记录 --不定时更新

时间:2016-04-10 21:11:45      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:

重新审视了一下OC在属性修饰符,特意记录一下来。以后不定时更新

》 retain:只有在非ARC下才会有效,所有如果在ARC下使用了retain修饰也白搭

如以下的data属性用retain修饰:

#import <UIKit/UIKit.h>
@interface MyView : UIView

@property(nonatomic, retain) NSMUtableArray* data;

@end

在对应的setter方法中,会以如下代码实现:

if (_data != newValue) {
    [_data release];
     _data = [newValue retain];
}

总结:使用retain修饰符,会使被赋值的对象引用计数加1

》 copycopy不会改变被赋值的对象引用,而是浅拷贝被赋值对象的副本。

对应的setter方法如下:

if (_data != newValue) {
    [_data release];
    _data = [newValue copy];
}

总结:不改变被赋值对象的引用计数,只是对象的副本引用计数加1.

》strong跟retain差不多,暂时没什么好记得了

后面再记.

iOS 属性修饰符记录 --不定时更新

标签:

原文地址:http://www.cnblogs.com/cool-fire/p/5375315.html

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