标签:
重新审视了一下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
》 copy:copy不会改变被赋值的对象引用,而是浅拷贝被赋值对象的副本。
对应的setter方法如下:
if (_data != newValue) { [_data release]; _data = [newValue copy]; }
总结:不改变被赋值对象的引用计数,只是对象的副本引用计数加1.
》strong跟retain差不多,暂时没什么好记得了
后面再记.
标签:
原文地址:http://www.cnblogs.com/cool-fire/p/5375315.html