Свойство Objective-C - PullRequest
       26

Свойство Objective-C

0 голосов
/ 18 января 2011

Я разрабатываю приложение для Iphone. Я прочитал из книги об объявлении собственности, как показано ниже:

@property (nonatomic, retain) NSArray *listData;

Затем в файле реализации метода dealloc должно быть указано что-то вроде:

[listData release];

Интересно, объявлю ли я

@property NSArray *listData;

я должен выпустить это? Это сэкономит мне 1 строку кода.

Ответы [ 2 ]

0 голосов
/ 18 января 2011
@property NSArray *listData;

просто неявно объявит ваши методы доступа и мутатора для listData,

а как насчет управления памятью (это серьезно для разработки приложений для iphone)?

Если вы собираетесь использовать его в реализации, вы должны выпустить его в методе dealloc

также см. Официальные документы Apple для @property

0 голосов
/ 18 января 2011

Да, вы должны отпустить его. Спецификатор retain означает, что когда вы устанавливаете свойство, ваш класс будет вызывать retain для NSArray. Когда урок закончен, вам нужно освободить все, что вы сохранили, в противном случае у вас утечка памяти.

...