Я хочу, чтобы иметь возможность копировать пользовательский класс в 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, даже если зона не нужна? И какую зону мне нужно передать в качестве параметра?
