Swift中可选标识符中感叹号的含义?

Meaning of exclamation mark in optional identifier in Swift?

我知道用感叹号我可以打开一个可选值,这意味着我可以将可选类型转换为 'normal' 类型。但是在类型标识符中使用感叹号呢?即

@IBOutlet weak var back: UIButton!

为什么我需要 !?没有 ! 就意味着 back 不能取 nil 值,不是吗?因为 Int i 意味着 i 都不能取 nil 值。但是为什么我需要 ! 在类型标识符中?

@IBOutlet 类型必须是可选的,否则编译器会抱怨 并非所有初始化程序都设置了变量。 Swift 不“知道”Interface Builder 是 在 运行 时间提供意见;因此它会完成它的工作并引发构建错误 关于未提供的值。