ios инициализирует экземпляр внутри функции для использования вне
-
29-10-2019 - |
Вопрос
анализатор xcode сообщает мне, что метод возвращает объект Objective-C со счетчиком сохранения +1:
но self.athletes - это объект, который мне нужен и вне моей функции ... как я могу решить это 'предупреждение? еще раз спасибо
спортсмен объявляется так:
общийРешение
Замените эту строку этой:
общийЯ написал полное объяснение здесь: Управление памятью для свойств с атрибутом сохранения
Другие советы
Поскольку ваше свойство определено как "сохранить", использование записи через точку приведет к дополнительному сохранению.Возврат из [[NSMutableArray alloc] init] имеет счетчик сохранения 1, а затем, когда вы устанавливаете свойство с помощью функции установки, сгенерированной объявлением свойства, он будет иметь счетчик сохранения 2
Чтобы исправить, либо:
общийИли вы также можете сделать это:
общийЕсть хороший способ справиться с этим (и вы уже использовали этот шаблон при создании пользовательского интерфейса).
NSMutableArray * sportsTemp= [[NSMutableArray alloc] init];
self.athletes= AthletesTemp;
[выпуск sportstesTemp];
Здесь вам не нужно нести нагрузку объекта с автоматическим выпуском.