优先规则
下面是从上到下的运算优先规则,优先级高的将先被运算。
注意:MQL5语言运算优先依据C++优先规则,不同于MQL4语言。
运算 |
描述 |
执行顺序 |
---|---|---|
() [] . |
函数调用 数组元素参考 引用结构元素 |
从左到右 |
! ~ ++ -- (type) sizeof |
真假运算符 位逻辑运算符(补码) 改变运算符 增量 减量 类型转换 决定字节大小 |
从右到左 |
* / % |
乘法 除法 百分比 |
从左到右 |
+ |
加法 减法 |
从左到右 |
<< >> |
左移 右移 |
从左到右 |
< <= > >= |
小于 小于等于 大于 大于等于 |
从左到右 |
== != |
等于 不等于 |
从左到右 |
& |
位逻辑运算符AND |
从左到右 |
^ |
位逻辑运算符 OR |
从左到右 |
| |
位逻辑运算符 OR |
从左到右 |
&& |
逻辑AND |
从左到右 |
|| |
逻辑OR |
从左到右 |
?: |
假设运算 |
从右到左 |
= *= /= %= += -= <<= >>= &= ^= |= |
值 乘法值 除法值 百分比值 加法值 减法值 左移值 右移值 位逻辑运算符AND值 位逻辑运算符OR值 位逻辑运算符OR值 |
从右到左 |
, |
逗号 |
从左到右 |
若要改变运算操作顺序,使用更高一级的圆括号。