因此,我有很多自定义对象可能包含大量数据,或者根据用户的输入数据很少。如果只需要一点点,我显然不希望为大量数据创建存储。所以我听说过初始化,听起来像我想要的;我只是无法让它工作。这是我尝试的一个示例:懒惰初始化不起作用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