self.tableData = [[NSMutableArray alloc] init];
[self.tableData removeAllObjects];
fillData(self.tableData);
+ 1 сохранение для alloc
, +1 сохранение для использования установщика свойства.Вы не уравняли +1 с alloc
.Если вы собираетесь использовать сеттер:
self.tableData = [NSMutableArray array];
fillData(self.tableData);
Обратите внимание, что removeAllObjects
в этом совершенно бессмысленно.
Это тоже странно:
[self.tableData removeAllObjects], [self.tableData release], tableData = nil;
Во-первых, не беспокойтесь об удалении объектов.Когда массив будет освобожден, он освободит все объекты.Во-вторых, использование сеттера для вызова release
, а затем немедленное прямое назначение противоречиво.Либо выполните:
self.tableData = nil;
Или:
[tableData release], tableData = nil;
(Обратите внимание, что использование ,
во всем этом также исключительно для вашей выгоды - оно не влияет насгенерированный код.)
Также используйте stringWithUTF8String:
, а не stringWithFormat:
.