私は C++ のコースを受講しました。そこでは、教師に見せる宿題がいくつかありました。その中には、次のような if ステートメントがいくつかありました。
if (A != 10)
return 1;
...snip logic ...
return 12;
彼はこれが気に入らず、ネストのレベルが複数ある場合でも、代わりに次のようにネストすることを提案しました。
if (A == 10) {
...snip logic ...
return 12;
} else
return 1;
彼は、なぜそのようにしたかったのか、私に説明することができませんでした。だから私の質問は、if ステートメントをそのようなものにする理由はありますか? 関数の最初に、早期に戻るいくつかの条件を設定する方が簡単でクリーンだと思います。これらのアイデアのいずれかが優れている/高速である理由について、何か考えやアイデアはありますか? その後、コンパイルされたコードに大きな違いはありますか?