"if" 语句中复合布尔表达式的运算顺序是什么

What is the order of operations for compound boolean expressions in an "if" statement

如果我有一个 if 语句

if (var1 || var2 && var3)
{
    //anything
}

它计算这些变量的顺序是什么?

我想我真正想知道的是这个 if 语句是否等同于

if ((var1 || var2) && var3){}
//or
if (var1 || (var2 && var3)){}

并在第一时间处理订单

我知道我可以用括号澄清这一点,它会按照我期望的顺序评估它们。但我想知道当没有括号时它们的默认查看方式。

docs 开始,&& 优先于 ||。建立优先级后,它会从左向右流动。所以,在你的例子中,它最终是 if (var1 || (var2 && var3)){}.