迅速4.2有奇怪的问题并解开 ??
简单的代码:
var someVar:String?
override func viewDidLoad() {
someOp = "print some string"
subTitleLabel.text = "text one" + someVar ?? "unwrapped"
}
Run Code Online (Sandbox Code Playgroud)
编译器抛出错误:
可选类型'String?'的值 必须解包为'String'类型的值
Swift 4.2发生了什么变化?
这是因为运算符的优先级。
的优先级+高于,??因此您必须添加括号
subTitleLabel.text = "text one" + (someVar ?? "unwrapped")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
742 次 |
| 最近记录: |