Отвечая на ваш вопрос, насколько мне известно.Во-первых, в чем разница между сохранением и копированием?каково его значение при подсчете ссылок?
retain - «Указывает, что retain должна вызываться для объекта при назначении. ... Предыдущее значение отправляется сообщением об освобождении».Таким образом, вы можете себе представить назначение экземпляра NSString (который является объектом и который вы, вероятно, хотите сохранить).Таким образом, счетчик хранения увеличивается на 1.
copy - «Указывает, что копия объекта должна использоваться для присвоения. ... Предыдущему значению отправляется сообщение об освобождении».В основном то же, что и сохранить, но отправка -копировать, а не-сохранить.если я правильно помню, счетчик тоже увеличится на 1.
хорошо, теперь перейдем к более подробным сведениям.
Атрибуты свойств - это специальные ключевые слова, чтобы сообщить компилятору, как генерировать методы получения и установки.Здесь вы указываете два атрибута свойства: nonatomic, который говорит компилятору не беспокоиться о многопоточности, и retain, который говорит компилятору сохранять переданную переменную перед установкой переменной экземпляра.
В других ситуациях выможет потребоваться использовать атрибут свойства assign для сохранения, что говорит компилятору НЕ!сохранить переданную переменную.Или, возможно, атрибут свойства «copy», который делает копию переданной переменной перед установкой.
Надеюсь, это поможет.Я нашел здесь еще один пост, который тоже может вам помочь.
Цель C - Назначить, скопировать, сохранить
Приветствия!Хосе