私はこれをCとしてタグ付けしていますが、確かに多くの言語に適用されます。この理由は、コンパイラに依存する最適化を扱う質問の一部です。
プログラムでこのような状況に遭遇することがあります。
if(bob == 42)
{
/* ... */
return;
}
else
{
/* ... */
}
else
おそらくお分かりのように、ここでのブロックは厳密には必要ありません。同じことが他のプログラムフロー制御構造でも発生します。一部の「通常の」構成は、特別な条件のために冗長になります。問題は、これらの冗長なコードブロックを作成する理由はありますか?明快さ?状況が十分に複雑な場合、それはコンパイラーの最適化に役立つ可能性がありますか?