在 swift 中为视图创建 IBOutlet 时,基础 class 附加了一个?

While creating an IBOutlet for a view in swift, the base class is appended with an?

在 swift 中,如果我为视图创建 IBOutlet,这就是我得到的结果

  @IBOutlet weak var viewOne: UIView!

界面视图?意味着它是一个可选的,可以是 nil 也可以不是。但是什么! for base class 这里是什么意思?我的理解是!用于解包可选值。

它将 viewOne 定义为隐式展开的可选。

就好像定义为UIView?,而你到处调用viewOne!一样。如果 viewOnenil,当您引用它时,您的应用程序将崩溃。

只要你细心,这将省去你在任何地方手动解包可选的麻烦。

我建议您重新阅读 The Basics section of the Swift Documentation 中的 "Implicitly Unwrapped Optionals" 部分。您可能希望重新阅读整个部分。