Если я не использовать Ивар для свойств, но сделать это:Свойства по умолчанию равны нулю?
@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
всюду и каждый раз.