я работаю над приложением для iphone на target-c у меня есть массив с ссылками на объекты Если я удалю элемент со ссылкой на объект из массива, должен ли я освободить этот объект дополнительно или он будет автоматически удален из памяти?
Если NSArray
(гм, это это NSArray
, не так ли? Массивы C не обеспечивают управление владением) - единственное, что владеет объект - то есть, если добавленный объект был получен autorelease
-d или вы явно вызвали release
после добавления - то он будет автоматически очищен при удалении. Любые другие претензии на право владения по-прежнему необходимо будет отпустить
-d как обычно.
При удалении из массива объект освобождается один раз. Так что если в других местах ваши retain/release спарены правильно, вы не должны освобождать объект в этом случае.