2

あるコードベースで一種の「詩的な」コードを見たことがあります。まっすぐに見えますが、正しい方向にあるかどうかを確認したいだけです。
非常に単純な形式で:

bool foo ();  
bool bar ();  

int main () {
  foo() or bar();  // <--- line
}

強調表示された行のコードは、以下のスニペットと同じくらい良いですか?

if(foo() == false)
  bar();

,すべてのステートメントが呼び出される演算子は知っていますが、 or(と同等の||) 演算子については不明です。
g ++でテストすると、期待される出力が得られます。

4

2 に答える 2

1

はい、or演算子は に相当するテキストです||

だからあなたの言ったことは正しい

于 2013-08-03T11:15:02.727 に答える
0

最初の条件がtrueもう一方の条件である場合(||の場合)、もう評価されないため、あなたが言ったとおりです:

if(foo() == false)
  bar();

&&1 番目の条件が のfalse場合、2 番目の条件が評価されなくなった場合にも同じことが当てはまります。

于 2013-08-03T11:12:22.190 に答える