【问题标题】:Do Optionals default to nil?Optionals 默认为 nil 吗?
【发布时间】:2019-03-20 13:38:10
【问题描述】:

如果没有提供构造函数,delegate 变量的初始值是多少?

class Example {
    weak var delegate: Bool?
}

【问题讨论】:

  • 如果您没有将协议类型声明为类:protocol Bool: class { },您也会收到此错误:'weak' may only be applied to class and class-bound protocol types, not 'Bool'
  • 抱歉,只是我填写了Bool 来替换协议驱动的类。你是对的!
  • 您可以轻松地打印(委托)并检查输出内容...
  • @AhmadF 有时,不同系统上的行为会有所不同。很高兴能从马口中得到信息。

标签: swift


【解决方案1】:

是的,如果未分配,它会自动设置为 nil。

来自Apple

如果您定义一个可选变量而不提供默认值, 该变量会自动为您设置为零

【讨论】:

  • 谢谢!这就是我一直在寻找的。​​span>
猜你喜欢
  • 1970-01-01
  • 2012-11-25
  • 1970-01-01
  • 2017-02-02
  • 2012-02-27
  • 2017-12-05
  • 1970-01-01
  • 2021-03-24
相关资源
最近更新 更多