Swift Language
Typealias
Поиск…
титалии для замыканий с параметрами
typealias SuccessHandler = (NSURLSessionDataTask, AnyObject?) -> Void
Этот блок кода создает псевдоним типа с именем SuccessHandler
, только в том же образом var string = ""
создает переменную с именем string
.
Теперь, когда вы используете SuccessHandler
, например:
func example(_ handler: SuccessHandler) {}
Вы, как правило, пишете:
func example(_ handler: (NSURLSessionDataTask, AnyObject?) -> Void) {}
титалии для пустых закрытий
typealias Handler = () -> Void
typealias Handler = () -> ()
Этот блок создает псевдоним типа, который работает как функция Void to Void (не принимает никаких параметров и ничего не возвращает).
Вот пример использования:
var func: Handler?
func = {}
типы для других типов
typealias Number = NSNumber
Вы также можете использовать псевдоним типа, чтобы указать тип другого имени, чтобы было легче запомнить его, или сделать ваш код более элегантным.
типы для кортежей
typealias PersonTuple = (name: String, age: Int, address: String)
И это можно использовать как:
func getPerson(for name: String) -> PersonTuple {
//fetch from db, etc
return ("name", 45, "address")
}
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow