我剛剛從Craig Hockenberry閱讀了一篇關於ARC and copy的簡短博文。我現在的問題是參數傳遞給初始值分配給實例變量總是使用copy
?或者它取決於實例變量的類型?初始化程序和副本
#import "MyObject.h"
@implementation MyObject {
SomeType *_ivar1;
SomeOtherType *_ivar2;
}
-(id)initWithParam1:(SomeType *)param1 andParam2:(SomeOtherType *)param2
{
if ((self == [super init])) {
_ivar1 = [param1 copy]; // Always good
_ivar2 = [param2 copy]; // practice?
}
return self;
}
@end
它看起來像我Craig只是警告設置支持ivar的屬性,它有一個'copy'說明符。 – 2012-07-06 18:26:26