私は読んでいたなぜ私たちはで使用する必要break
がありswitch
ますか?、そして、明示的なフォールスルーのサポート(AFAIK)がないのに、一部の言語(PHPやJavaScriptなど)で暗黙的なフォールスルーが許可されている理由を疑問に思いました。
continue
完全に適切であるように、新しいキーワードを作成する必要があり、著者が事件を解決することを意図していたかどうかのあいまいさの問題を解決するようなものではありません。
現在サポートされている形式は次のとおりです。
switch (s) {
case 1:
...
break;
case 2:
... //ambiguous, was break forgotten?
case 3:
...
break;
default:
...
break;
}
一方、次のように書くのは理にかなっています。
switch (s) {
case 1:
...
break;
case 2:
...
continue; //unambiguous, the author was explicit
case 3:
...
break;
default:
...
break;
}
この質問の目的上、フォールスルーが優れたコーディングスタイルであるかどうかの問題を無視できます。
フォールスルーを許可し、明示的にした言語が存在しますか?
switch
明示的ではなく暗黙的なフォールスルーを可能にする歴史的な理由はありますか?
goto case
、C#には気づいていませんでした。
goto case
、pdrが言及しているように、です。
goto case
ため、質問の前提は少し間違っています。