天蓬老师2017-04-17 14:43:23
スイッチの条件は、あなたが接触するほとんどの言語に当てはまるはずだと思います。
言い換えれば、切り替え条件間に曖昧さがあってはなりません。
D では、条件 1 と条件 c の間に曖昧さが生じる可能性があります。c が変数であるため、c が 1 に等しい場合、プログラム内で予期せぬ事態が発生する可能性があります。したがって、コンパイラは単にこの状況を禁止します。 (ここでは c に値 2 が割り当てられていますが、定数ではないため、コンパイラは変数が実行時に変更されるかどうかを保証できず、それでも曖昧さが生じると考えています)
簡単に言うと、スイッチ条件変数に含めることはできません。 (ここでの変数とは、この条件判断の結果を変えることができる量を指します。Swift では、構文により条件一致値を変数に割り当てることができます)