在Swift 3中,当一个具有可选的函数参数时,函数之间的区别是:
func doThis(num: Int!)
Run Code Online (Sandbox Code Playgroud)
和
func doThat(num: Int?)
Run Code Online (Sandbox Code Playgroud)
两者都声明这num是可选的Int.
如果你这样做Int!,可以在你的函数内隐式解包.这意味着您可以在需要普通(非可选)的地方使用它Int.在这种情况下,如果它恰好是失败的话nil.
着有"正确的" Int?,编译器不会让你使用num其中一个Int是必需的,逼着你首先包括支票/后卫.
该Int!构造主要用于与Objective-C代码的互操作性,其中不清楚引用类型是否是可选的.你应该在新代码中避免使用它.
| 归档时间: |
|
| 查看次数: |
794 次 |
| 最近记录: |