IBOutlet и viewDidUnload в ARC

Есть аналогичный вопрос на SO здесь , однако я просто хочу прояснить кое-что, что не было полностью

Я понимаю, что все делегаты и выходы - фактически любая ссылка на "родительский" объект, чтобы быть хорошим гражданином и подумать о графе объекта на минуту - должны обнулять слабые ссылки. Из-за природы обнуления слабых указателей, которые автоматически сбрасываются до нуля при достижении нуля счетчиком сохранения объекта, на который указывает ссылка, означает ли это, что установка IBOutlets на nil в viewDidUnload теперь не нужна?

Итак, если я объявлю свой выход следующим образом:

@property (nonatomic, weak) IBOutlet UILabel *myLabel;

Имеет ли значение следующий код?

- (void)viewDidUnload
{
    self.myLabel = nil;

    [super viewDidUnload];
}

36
задан Community 23 May 2017 в 11:55
поделиться