Почему Xcode говорит, что это может протечь? - PullRequest
2 голосов
/ 08 сентября 2011

Я определил splitBarArr в файле .h:

@property (nonatomic, retain) NSMutableArray *splitBarArr;

И я также установил его равным nil в viewDidUnload, и выпустил его в dealloc.

Почему XCode все еще говорит, что это потенциальная памятьутечка?

Img здесь: http://i.stack.imgur.com/3LMMZ.png

1 Ответ

8 голосов
/ 08 сентября 2011

при присваивании свойства retain сохраняемое число увеличивается на 1. Следовательно, alloc в массиве делает +1, а присвоение его свойству через self делает +1 снова. release в dealloc делает -1, поэтому у вас все еще остается +1. Выполнение назначения таким образом решит проблему:

self.splitBarArr = [NSMutableArray array];
...