想象一下,你有一个带有两个值的OR条件的while循环。第二个值有一个增量(++
)。如果第一个值是true
,那么第二个值的增量似乎永远不会发生。
让我们来看看一段代码:
bool iterationPassed = false;
while (!iterationPassed || ++retries <= 3)
if(somethingHappened)
iterationPassed = true;
好的,我非常清楚这是合乎逻辑的。如果第一个值为true,则会出现OR语句,为什么需要检查其他值。但在这种情况下,另一个值是另一个步骤(++
)的结果,并且该步骤从未发生过。所以我想在复杂条件下增加或进行任何操作都是一种非常糟糕的做法?此外,这种语言是否具体?