Это считается типичным
- (id)init {
self = [super init];
if (self) {
// <#initializations#>
}
return self;
}
но не было бы лучше пойти с чем-то вроде этого, которое на самом деле отвечает соответствующим образом?
- (id)init {
self = [super init];
if (self) {
// <#initializations#>
} else {
@throw [NSException exceptionWithName:NSInternalInconsistencyException reason:@"you think your constructor is executing, but it not"] userInfo:nil]
}
return self;
}
Следствием этого вопроса является "при каких условиях [super init]
return nil
и вы не должны обрабатывать это в методе init
?"