因此,我有很多自定義對象可能包含大量數據,或者根據用戶的輸入數據很少。如果只需要一點點,我顯然不希望爲大量數據創建存儲。所以我聽說過初始化,聽起來像我想要的;我只是無法讓它工作。這是我嘗試的一個示例:懶惰初始化不起作用iPhone
@synthesize name;
...
- (NSString *)name {
if (!name) name = [[NSString alloc] init];
return name;
}
,然後其他
myObject.name = localName;
某處如果我alloc
和init
myObject的在它的初始名稱,然後能正常工作。但是,當我嘗試上述懶惰初始化時,對象的名稱在嘗試設置後變爲nil
。我究竟做錯了什麼?
ARC是否打開?這是iOS 5/4,還是手動引用計數? – Linuxios 2012-07-09 00:49:24
是ARC打開了,這是iOS 5 – Garrett 2012-07-09 00:51:15