私は私の質問を説明するために以下のコードを使用します。C++で多くの比較演算を書くのに最も良い議論は何ですか?
if(a== 0)
{
if(b==0)
{
if(c == 0)
{
//
}
}
}
if((a==0)&&(b==0)&&(c==0))
{
}
対最初のコードの断片は、それが機能から来るときに第二と同じです。 2番目はより簡潔で分かりやすいです。私はちょうど両方のコードの断片が同じを実行するかどうかのコードのコンパイル後に疑問に思う。秒は速く走るでしょうか?ここでは、多くの比較があると仮定します。例
なぜコンパイラがコードを発行していないのか、それとも高速であるかを調べるためにテストを実行する – pm100
最適化コンパイラでコンパイルされた実際のアプリケーションでは、これらのようなものがあなたが心配しているものであれば、あなたはおもちゃのサンプルプログラムで遊んでいると思うか、もっと大きな問題を抱えていると思われます。 –
スタイルに関するちょっとしたメモ: 'if(a == 0 && b == 0&c == 0)'に余分な括弧は必要ありません。 –