()既是一个类型(也是Void空元组类型的类型别名),又是该类型的唯一值。所以
let x = ()
Run Code Online (Sandbox Code Playgroud)
定义为类型(又名)x的常量属性,值为。 ()Void ()
等效的语句是
let x:() = ()
let x:Void = ()
Run Code Online (Sandbox Code Playgroud)
但不是
let x = Void // error: expected member name or constructor call after type name
Run Code Online (Sandbox Code Playgroud)
因为Void是类型而不是值。
当定义没有参数和/或没有返回值的函数类型时,似乎一致认为使用()空参数列表并且Void没有返回值。例如,这可以在 UIKit 完成处理程序中看到,或者在提交到 GCD 调度队列的执行块中看到,例如
func sync(execute block: () -> Void)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
147 次 |
| 最近记录: |