Я хотел бы реализовать простой GKGameModel
в Swift 2. Пример Apple выражается в Objective-C и включает это объявление метода (в соответствии с требованиями протокола NSCopying
из которого наследуется GKGameModel
):
- (id)copyWithZone:(NSZone *)zone {
AAPLBoard *copy = [[[self class] allocWithZone:zone] init];
[copy setGameModel:self];
return copy;
}
Как это переводится в Swift 2? Является ли следующее подходящим с точки зрения эффективности и игнорирования зоны?
func copyWithZone(zone: NSZone) -> AnyObject {
let copy = GameModel()
// ... copy properties
return copy
}