A) это плохая идея сделать это в вашем инициализаторе (например, initWithNibName: bundle:)
self.arrayData = [NSArray arrayWithObjects:@"Usuario:",@"Password:",nil];
использовать это вместо:
arrayData = [[NSArray alloc] initWithObjects:@"Usuario:",@"Password:",nil];
вы не должны вызыватьэти методы доступа (свойства) в инициализаторах или dealloc.
B)
правильно ли вызывать
[выпуск self.arrayData]
нет.во многих случаях (если вы реализуете некоторые из объявленных вами свойств), вам может не быть возвращен ивар.Вы можете получить копию, объект-заполнитель или подкласс, возможно, решили повторно реализовать средства доступа (как некоторые примеры).в этих случаях легко перевыпустить или перенести (что приводит к злым вещам, таким как утечки и аварии).
это типично:
self.arrayData = nil;
, если Вы находитесь в dealloc
объекта, который объявил ивар:
- (void)dealloc {
[arrayData release], arrayData = nil;
[super dealloc];
}