鑑於C#中的以下枚舉以及根據其狀態返回文本框邊框顏色的開關/案例。將默認案例與其他案例結合使用
enum TextboxState {
Default,
Error
}
switch(foo) {
default:
case TextboxState.Default: return Color.Black;
case TextboxState.Error: return Color.Red;
}
所以基本上我定義了一個真實的,而不只是按約定的默認狀態又名TextboxState.Default
通過添加default:
情況。我只是想要做到這一點,以防止將新的值添加到枚舉中以後的更改。
據雨燕的書,這是不可能的:
「如果沒有適當的,爲每一個可能的 值開關的情況下,您可以定義默認包羅萬象的情況下,以支付任何值 沒有明確解決。這個包羅萬象的情況下被 表示關鍵字默認值,必須總是在最後出現。」
該段是關於很清楚,所以我想我上面的模式並不適用於斯威夫特還是我想念什麼?是否有另一種方法來存檔類似上面的代碼?
作爲參考,下面的切換部分記錄在此處:https://developer.apple.com/library/prerelease/mac/documentation/Swift/Conceptual/Swift_Programming_Language/Statements.html – 2014-09-30 16:27:37