Описание тега nsmutablecopying

Протокол NSMutableCopying объявляет метод для предоставления изменяемых копий объекта. Только классы, которые определяют различие "неизменяемый и изменяемый", должны принять этот протокол. Классы, которые не определяют такое различие, должны вместо этого принять NSCopying. Это доступно в iOS 2.0 и позже.

Это заявлено в рамках Фонда Apple. Класс, определяющий различие между неизменяемым и изменяемым, принимает этот протокол, чтобы разрешить создание изменяемых копий его экземпляров. Изменяемая копия объекта обычно является мелкой копией (в отличие от глубокой копии, определенной в спецификации протокола NSCopying). Оригинал и его копия совместно ссылаются на одни и те же переменные экземпляра, поэтому, если, например, компонент копии изменяется, это изменение отражается в оригинале.

Из официального документа Apple:

NSMutableCopying объявляет один метод mutableCopyWithZone:, но изменчивое копирование обычно вызывается с помощью вспомогательного метода mutableCopy. Метод mutableCopy определен для всех объектов NSObject и просто вызывает mutableCopyWithZone: с зоной по умолчанию.

Если подкласс наследует NSMutableCopying от своего суперкласса и объявляет дополнительные переменные экземпляра, подкласс должен переопределить mutableCopyWithZone: чтобы правильно обрабатывать свои собственные переменные экземпляра, сначала вызывая реализацию суперкласса.

Источник: NSMutableCopying Ссылка на протокол

Связанный ТАК вопрос:

  1. Что делает Mutable Copy в Objective C

  2. MutableCopy AllocLeak MemoryLeak

Связанные теги: