Я импортирую некоторый старый код ObjC, около 2006 года, к последнему Xcode. Это было написано до эпохи ARC, и у меня нет сильной рутины в предыдущей системе. Ищете некоторые советы о том, как их диагностировать.Утечка объектов, и мне нужно исправить это
Вот пример, один из сотен ...
sym = [ globals addObject:[ [ NCObject alloc ] initWithArray:saved dimension:dimension type:type ] ] ;
Ошибка не специфичны, мне нужен autorelease вокруг всей вещи, или один сразу же после того, как «тип]»?
Я, кажется, помню, что основное правило заключается в том, что если я вижу inti, мне нужно его автообновить. Есть ли другие случаи, о которых мне нужно подумать?
Вы имеете в виду 'alloc', а не' init' в этом ответе, правильно? – danh
@ danh, да, извините, спасибо :) Я отредактирую это через минуту. Это почти 3 часа ночи здесь. Время, чтобы заснуть, я думаю :) – FreeNickname
Пункт 1 является неполным: кроме того, 'allocWithZone:', 'copy',' copyWithZone: ',' mutableCopy' и 'mutableCopyWithZone:', и вообще любые методы, имена которых начинаются с 'alloc' или' new', все передают право собственности вызывающему. – jlehr