关于使用运算符"或"的一些细节

And*_*kha 3 c

考虑以下代码:

int a = 5;
if (a == 5 || a == 10)
  doSomething();
Run Code Online (Sandbox Code Playgroud)

在这种情况下a是5所以第一个条件是真的.程序是否会检查第二个条件是否为真,或者在确定第二个条件确实为5 doSomething()后立即开始执行a

jap*_*iss 10

它将立即开始执行.这被称为短路评估.

http://en.wikipedia.org/wiki/Short-circuit_evaluation