Я предполагаю, что вы определили сохраненные свойства для класса CustConf. Поскольку объект автоматически сохранит строки aAA и bBB, а вы не освободили их в коде до завершения метода, в результате произойдет утечка памяти.
+ ( CustConf* ) initEmptyCustConf {
CustConf* theObject = [[CustConf alloc] init];
theObject.ID = 0;
theObject.aAA= [[NSString alloc] initWithString:@""]; //potential leak
theObject.Number_Ndx = 0;
theObject.bBB = [[NSString alloc] initWithString:@""]; //potential leak
return [theObject autorelease];
}
Чтобы исправить это, вам нужно явно освободить строки, присвоенные theObject.aAA и theObject.bBB через release / autorelease, или просто использовать строковые константы.
+ ( CustConf* ) initEmptyCustConf {
CustConf* theObject = [[CustConf alloc] init];
theObject.ID = 0;
theObject.aAA= @"";
theObject.Number_Ndx = 0;
theObject.bBB = @"";
return [theObject autorelease];
}
Кроме того, если ваш метод начинается с "init", то обычно возвращается возвращенный объект, поэтому либо удалите авто-релиз в конце, либо измените имя метода, чтобы отразить природу вашего метода.