Я хочу, чтобы иметь возможность копировать пользовательский класс в Swift. Все идет нормально. В Objective-C мне просто пришлось реализовать протокол NSCopying
, что означает реализацию copyWithZone
.
В качестве примера у меня есть базовый класс с именем Value
, в котором хранится NSDecimalNumber
.
func copyWithZone(zone: NSZone) -> AnyObject! {
return Value(value: value.copy() as NSDecimalNumber)
}
В Objective-C я мог просто просто вызвать copy
для копирования моего объекта. В Swift, кажется, нет способа вызвать copy
. Мне действительно нужно позвонить copyWithZone
, даже если зона не нужна? И какую зону мне нужно передать в качестве параметра?