Я использую класс NSXMLParser в своей программе и назначаю ему делегата.
Этот делегат, однако, сохраняется методом setDelegate:, приводящим к незначительной, но раздражающей :-) утечке памяти.
Я не могу освободить класс делегата после setDelegate: потому что программа вылетит.
Вот мой код:
self.parserDelegate = [[ParserDelegate alloc] init]; //retainCount:1
self.xmlParser = [[NSXMLParser alloc] initWithData:self.xmlData];
[self.xmlParser setDelegate:self.parserDelegate]; //retainCount:2
[self.xmlParser parse];
[self.xmlParser release];
ParserDelegate - класс делегата.
Конечно, если я укажу «self» в качестве делегата, у меня не будет проблем, но я хотел бы знать, есть ли способ использовать другой класс в качестве делегата без утечек.
Заранее спасибо.