【问题标题】:difference between implicitly unwrapped optionals and non-optionals隐式展开的可选项和非可选项之间的区别
【发布时间】:2014-11-27 11:33:36
【问题描述】:

如果 Apple 在 Swift Programming 中所说的隐式解包选项应该总是有一个值,那么为什么不使用非选项呢? 我知道知道 non-optionals 不能分配给 nil 但还有其他区别吗?

【问题讨论】:

标签: swift optional


【解决方案1】:

还有其他区别吗?

隐式展开的可选项可以与nil 进行比较。

var a:String!
if a == nil {
    // a is nil
}

【讨论】:

    【解决方案2】:

    最简单的答案是可选变量可能根本无法获取值,在 iOS 开发中,通常需要这种特殊行为。因此,Swift 没有在 Objective-C 中创建指针(成本很高),而是引入了可选变量。要了解隐式和显式选项,请参阅 this 链接。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-26
      • 2021-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-01
      相关资源
      最近更新 更多