#swift
#swift
Вопрос:
Было бы неплохо иметь возможность использовать что-то похожее на «self» в качестве псевдонима для доступа к статическим переменным структуры или класса. Есть ли у swift псевдоним для этого?
Например:
struct MyStruct {
static let variable = "Hello"
func accessVariable() {
MyStruct.variable // This works
self.variable // I'd like to be able to do this.
}
}
Или класс:
class MyClass {
static let variable = "Hello"
func accessVariable() {
MyClass.variable // This works
self.variable // I'd like to be able to do this.
class.variable // Or this would be nice too!
}
}
Комментарии:
1.
Self.variable
Ответ №1:
Есть три способа:
MyStruct.variable
type(of:self).variable
Self.variable
Self
Ключевое слово является относительно недавним нововведением Swift и, вероятно, является вашим предпочтительным выбором здесь. Преимущество type(of:)
Self
простого указания имени заключается в том, что они полиморфны.