アカウント名:
パスワード:
多くの言語においてswitch文・式はbreakを書かないとswitch文・式から抜けないので、それを利用して意図的にbreakを書かないこともあるのだが、break無しでもswitch文・式から抜けるとなると混乱の元。
拡張されたり式になったりしたのはいいけど、そこを変えるならswitchではなく、whenとかにして欲しかった。
いや2010年以降に発表されたメジャー言語はほぼフォールスルーではなくbreakがデフォだよ。go, swift とか。rust は match だけど。
メジャーな言語ではC#あたりがbreakが必要な最後の言語だよね。しかもC#のswitch-caseはbreak必須なのでフォールスルー不可、matchではbreakなし
そもそもフォールスルーがバグの元って発想でやってるからね。
caseを間に付け足されると壊れるからね
> しかもC#のswitch-caseはbreak必須なのでフォールスルー不可、matchではbreakなし
goto case文とgoto default文、涙目
# まあ、使わないけど。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
日々是ハック也 -- あるハードコアバイナリアン
break不要のswitch文・式 (スコア:0)
多くの言語においてswitch文・式はbreakを書かないとswitch文・式から抜けないので、それを利用して意図的にbreakを書かないこともあるのだが、break無しでもswitch文・式から抜けるとなると混乱の元。
拡張されたり式になったりしたのはいいけど、そこを変えるならswitchではなく、whenとかにして欲しかった。
Re:break不要のswitch文・式 (スコア:1)
いや2010年以降に発表されたメジャー言語はほぼフォールスルーではなくbreakがデフォだよ。
go, swift とか。rust は match だけど。
Re: (スコア:0)
メジャーな言語ではC#あたりがbreakが必要な最後の言語だよね。
しかもC#のswitch-caseはbreak必須なのでフォールスルー不可、matchではbreakなし
Re: (スコア:0)
そもそもフォールスルーがバグの元って発想でやってるからね。
Re: (スコア:0)
caseを間に付け足されると壊れるからね
Re: (スコア:0)
> しかもC#のswitch-caseはbreak必須なのでフォールスルー不可、matchではbreakなし
goto case文とgoto default文、涙目
# まあ、使わないけど。