_cmd в языке Swift
Мой предыдущий вопрос был отмечен как дубликат. Я попытался изменить свой вопрос, но я не могу удалить повторяющийся тег, поэтому мне нужно создать новый
Что такое быстрый эквивалент _cmd?
Я хочу получить текущее имя метода для использования в сообщении формата, подобном этому
[NSExeception raise:NSInternalInconsistencyException format:@"You must override %@ in a subclass", NSStringFromSelector(_cmd)]
Кроме того, я хочу использовать _cmd как ключ для установки связанного объекта. Кто-нибудь знает эквивалент _cmd в Свифт, я действительно ценю.
Ответы
Ответ 1
Нет _cmd
, но вы можете использовать __FUNCTION__
, чтобы получить имя текущей функции, которая может использоваться вместо селекторов большую часть времени.
func myUnimplementedMethod() {
println("You must override \(__FUNCTION__) in a subclass")
}
myUnimplementedMethod()
// prints "You must override myUnimplementedMethod() in a subclass"