使用let _ = ...
是否有任何用途?「讓_ = ...」(讓下劃線相等)在Swift中有什麼用處?
我看過What's the _ underscore representative of in Swift References?的問題和解答,我知道下劃線can be used to represent a variable that isn't needed。
這將使意義,如果我只需要一個元組的一個值作爲從上面的鏈接的例子:
do {
let _ = try DB.run(table.create(ifNotExists: true) {t in
t.column(teamId, primaryKey: true)
t.column(city)
t.column(nickName)
t.column(abbreviation)
})
} catch _ {
// Error throw if table already exists
}
我不:
let (result, _) = someFunctionThatReturnsATuple()
不過,我最近碰到this code來到如果我只刪除let _ =
,就不會得到任何編譯器警告或錯誤。在我看來,這更簡單,更具可讀性。代碼的作者寫了a book and a blog about Swift。我知道作者並不是絕對可靠的,但它讓我懷疑是否有某些我錯過的東西。
下面是一個例子,其中需要'_'的賦值以避免編譯器警告未使用的結果:http:// stackoverflow。 COM/A /1187415分之32788209。 –
簡而言之,'let _ ='明確表示程序員想要忽略方法調用的結果。 – Sulthan
分配給'_'時'let'似乎是可選的。博客作者這樣做。 – vacawama