0
隱式解包可選項可以這樣完成。爲什麼let variable = x語法不適用於三元運算符?
if let foo = foo {
print("foo")
} else {
print("bar")
}
我在遊樂場練習,而我不明白的是爲什麼我不能用三元運算符做上面的那個。
let foo = foo ? print("foo") : print("bar")
// or
var result:String = (let foo = foo ? print("foo") : print("bar"))
我以爲這是完全正常的,雖然尷尬,Swift的語法,因爲三元操作評估表達式。我的懷疑是,let foo = foo
本身就是Swift必須處理的表達,但是這是來自像我這樣的Swift新手。
我相信你的第一個例子稱爲'可選Binding' 。隱含地展開是「一些變化!」。 – Eendje
而你的第二個例子不起作用的原因是因爲你在自己的初始值中使用'foo',因此錯誤:'在它自己的初始值內使用的變量'。 – Eendje
你試圖用'let foo = foo'來實現什麼 – 2016-02-14 06:36:24