Фактически, если вы используете метод с «новым», «создать», «назначить» или «скопировать» на свое имя, тогда вы несете ответственность за освобождение объекта, который вам возвращается. НО: Почему эти методы делают вызов -autorelease? Разве это не привело бы к «чрезмерному выпуску» объекта?Почему конструктор Convencience или Object Factory должен заботиться об освобождении объекта?
Допустим, что я получаю этот объект от такого метода, а затем я вызываю -release на этом. Объект находится в пуле Autorelease и имеет счетчик ссылок 0. Что будет дальше, когда будет выпущен пул Autorelease?
Удаление iPhone-специфических тегов, так как это на самом деле не связано. Не уверен, почему люди будут голосовать за это, это хороший вопрос, хотя и тот, который часто задают вопросы, поскольку он является точкой отсчета для новичков Objective-C. –