С переменной экземпляра туАггау:Инициализация экземпляра переменной
@interface AppController : NSObject
{
NSArray *myArray;
}
Иногда я вижу туАггау инициализируется так:
- (void)init
{
[super init];
self.myArray = [[NSArray alloc] init];
return self;
}
и иногда я вижу его более сложным способом:
- (void)init
{
[super init];
NSArray *myTempArray = [[NSArray alloc] init];
self.myArray = myTempArray
[myTempArray release];
return self;
}
Я знаю, что нет никакого различия в конечном результате, но почему люди беспокоятся о том, чтобы сделать более длинную версию ?
Мое ощущение, что более длинная версия лучше, если переменная экземпляра настроена с помощью @property и @synthesize (возможно, потому, что переменная уже выделена). Это часть причины?
Спасибо.
То, что вы назвали методами 'init', полностью вводит в заблуждение, поскольку ни один из них не имеет дистанционной квалификации, чтобы быть ini tializer. – bbum