【发布时间】:2015-09-21 22:03:45
【问题描述】:
我对 iOS 比较熟悉,我想知道什么时候应该在属性中使用 copy,例如
@property (nonatomic, retain) NSString* name;
对
@property (nonatomic, copy) NSString* name;`
retain 和 copy 有什么区别,什么时候应该使用其中一个而不是另一个?
【问题讨论】:
-
一般来说,我对 NSString、数组和其他变量等对象使用保留。但是当我将 UIView 的出口或任何实例作为 UIViewController 时,我会变得坚强。否则实际上我不知道区别。
-
@ArpitParekh 强 === 保留:stackoverflow.com/questions/7796476/…
-
但是,当我将 UIViewController 作为一个变量,并且我需要将它分配为一个强大的属性时,如果我将它作为一个保留,那么我的应用程序就会崩溃......这个链接支持这个。将其添加为子视图时stackoverflow.com/questions/9144959/…
-
@ArpitParekh
retain自 ARC 起不再使用。您应该将其替换为strong。
标签: ios objective-c iphone cocoa