Создать копию NSObject - PullRequest
       25

Создать копию NSObject

7 голосов
/ 13 сентября 2010

Как мне взять объект NSO, для которого я установил все атрибуты, и затем скопировать его в другой блок памяти, который может использовать массив, чтобы я мог повторно использовать исходный?

Ответы [ 2 ]

7 голосов
/ 13 сентября 2010

Создание копии объекта осуществляется путем отправки ему сообщения copy.Это работает только для экземпляров классов, которые реализуют протокол NSCopying.

Чтение Реализация копирования для хорошего обзораЗатем прочитайте Реализация NSCopying считается опасной для получения дополнительной информации.

7 голосов
/ 13 сентября 2010

Короче, нет.

Если вы хотите поместить объект в массив, а затем создать новый объект, сделайте именно это; addObject: в массив и alloc/init новый.

Если вы спрашиваете, как вы копируете объект, скажем, в случайный malloc() блок где-то - скажем, в середине массива - тогда это совсем другая проблема. Это технически может быть , но в принципе никто этого не делает, так как фреймворки и среда выполнения не предназначены для этого.

Не зная больше о ваших конкретных потребностях, невозможно углубиться в детали.

...