Ответ 1
Это реликвия из старых дней, когда у нас было множество "зон" для размещения. В наши дни все приложения имеют только одну зону, в которой все распределения выделены, но класс NSZone
все еще существует и слишком много код записывается в зависимости от +allocWithZone:
, являющегося основным методом распределения для внесения изменений.
Короче говоря, вы можете полностью игнорировать структуру NSZone
, и единственная причина заботиться о +allocWithZone:
- это то, что вам нужно переопределить ее. Аналогично -copyWithZone:
, вы можете просто игнорировать зону. Если вы этого желаете, вы можете вызвать +allocWithZone:
, проходящего в той же зоне, но это не будет иметь никакого значения.