разница между [self.view release] и [view release]? - PullRequest
0 голосов
/ 03 августа 2011

В чем разница между

разницей между [выпуском self.view] и [выпуском просмотра].

Я получаю ошибку утечки памяти в [выпуске self.view]

Ответы [ 2 ]

1 голос
/ 03 августа 2011

Не должно быть никакой практической разницы.Однако, поскольку одной из причин использования свойств является устранение необходимости явного управления памятью, [self.view release] было бы странно.Если это свойство, то пусть аксессоры свойств сохраняют и освобождают объект по мере необходимости.

Трудно понять, почему вы получили реальную утечку от [self.view release].Утечки происходят из-за неправильного освобождения объекта - я не думаю, что вы можете создать утечку, выпуская что-то.Может случиться так, что доступ к объекту через свойство не позволяет статическому анализатору соединить точки из + alloc to -release.

1 голос
/ 03 августа 2011

[view release] вызывает NSObject метод - (void)release непосредственно для переменной экземпляра с именем view.

[self.view release] вызывает - (UIView *)view (я полагаю, view имеет тип UIView) для self и , затем вызывает - (void)release для возвращаемого объекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...