如果我不使用 ivar 作为属性,但这样做:
@interface someClass : NSObject
@property (nonatomic, retain) NSArray * someArray;
@end
@implementation someClass
@synthesize someArray = _someArray;
- (void) someMethod
{
if( self.someArray == nil ){
// True on the first call?
}
}
@end
我第一次检查self.someArray
它会返回nil
,_someArray
但这是有保证的吗?我只读到 ivars 保证是nil
,并且由于我没有声明 ivar (_someArray
不是 ivar),我不确定它是否会nil
无处不在。