Swift Language
Typealias
Sök…
typealias för stängningar med parametrar
typealias SuccessHandler = (NSURLSessionDataTask, AnyObject?) -> Void
Detta kodblock skapar ett SuccessHandler
namnet SuccessHandler
, precis på samma sätt var string = ""
skapar en variabel med string
.
Nu när du använder SuccessHandler
, till exempel:
func example(_ handler: SuccessHandler) {}
Du skriver essentiellt:
func example(_ handler: (NSURLSessionDataTask, AnyObject?) -> Void) {}
typealier för tomma stängningar
typealias Handler = () -> Void
typealias Handler = () -> ()
Det här blocket skapar ett typalias som fungerar som en Void to Void-funktion (tar inga parametrar och returnerar ingenting).
Här är ett användningsexempel:
var func: Handler?
func = {}
typealier för andra typer
typealias Number = NSNumber
Du kan också använda ett typalias för att ge en typ ett annat namn för att göra det lättare att komma ihåg eller göra din kod mer elegant.
typealier för tuples
typealias PersonTuple = (name: String, age: Int, address: String)
Och detta kan användas som:
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
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow