Приоритеты и порядок операций
Для каждой группы операций в таблице приоритет одинаков. Чем выше приоритет группы операций, тем выше она расположена в таблице. Порядок выполнения определяет группировку операций и операндов.
Внимание: Приоритет выполнения операций в языке MQL4 соответствует приоритету, принятому в языке С++.
|
|
|
()
[]
.
|
Вызов функции
Выделение элемента массива
Выделение элемента структуры
|
Слева направо
|
!
~
–
++
--
(тип)
sizeof
|
Логическое отрицание
Побитовое отрицание (complement)
Изменение знака
Увеличение на единицу (increment)
Уменьшение на единицу (decrement)
Преобразование типа
Определение размера в байтах
|
Справа налево
|
*
/
%
|
Умножение
Деление
Деление по модулю
|
Слева направо
|
+
–
|
Сложение
Вычитание
|
Слева направо
|
<<
>>
|
Сдвиг влево
Сдвиг вправо
|
Слева направо
|
<
<=
>
>=
|
Меньше, чем
Меньше или равно
Больше, чем
Больше или равно
|
Слева направо
|
==
!=
|
Равно
Не равно
|
Слева направо
|
&
|
Побитовая операция И
|
Слева направо
|
^
|
Побитовая операция исключающее ИЛИ (eXclude OR)
|
Слева направо
|
|
|
Побитовая операция ИЛИ
|
Слева направо
|
&&
|
Логическая операция И
|
Слева направо
|
||
|
Логическая операция ИЛИ
|
Слева направо
|
?:
|
Условная операция
|
Справа налево
|
=
*=
/=
%=
+=
-=
<<=
>>=
&=
^=
|=
|
Присваивание
Умножение с присваиванием
Деление с присваиванием
Деление по модулю с присваиванием
Сложение с присваиванием
Вычитание с присваиванием
Сдвиг влево с присваиванием
Сдвиг вправо с присваиванием
Побитовое И с присваиванием
Исключающее ИЛИ с присваиванием
Побитовое ИЛИ с присваиванием
|
Справа налево
|
,
|
Запятая
|
Слева направо
|
Для изменения порядка выполнения операций применяются круглые скобки, которые имеют высший приоритет.
Приоритеты и порядок операций в старой версии языка MQL4
Ниже для справки приведены приоритеты и порядок операций языка MQL4 до обновления.
Для каждой группы операций в таблице приоритет одинаков. Чем выше приоритет группы операций, тем выше она расположена в таблице. Порядок выполнения определяет группировку операций и операндов.
|
|
|
()
[]
|
Вызов функции
Выделение элемента массива
|
Слева направо
|
!
-
++
--
~
|
Логическое отрицание
Изменение знака
Увеличение на единицу (increment)
Уменьшение на единицу (decrement)
Побитовое отрицание (complement)
|
Справа налево
|
&
|
^
<<
>>
|
Побитовая операция И
Побитовая операция ИЛИ
Побитовая операция исключающее ИЛИ (eXclude OR)
Сдвиг влево
Сдвиг вправо
|
Слева направо
|
*
/
%
|
Умножение
Деление
Деление по модулю
|
Слева направо
|
+
-
|
Сложение
Вычитание
|
Слева направо
|
<
<=
>
>=
==
!=
|
Меньше, чем
Меньше или равно
Больше, чем
Больше или равно
Равно
Не равно
|
Слева направо
|
||
|
Логическая операция ИЛИ
|
Слева направо
|
&&
|
Логическая операция И
|
Слева направо
|
=
+=
-=
*=
/=
%=
>>=
<<=
&=
|=
^=
|
Присваивание
Сложение с присваиванием
Вычитание с присваиванием
Умножение с присваиванием
Деление с присваиванием
Деление по модулю с присваиванием
Сдвиг вправо с присваиванием
Сдвиг влево с присваиванием
Побитовое И с присваиванием
Побитовое ИЛИ с присваиванием
Исключающее ИЛИ с присваиванием
|
Справа налево
|
,
|
Запятая
|
Слева направо
|
Для изменения порядка выполнения операций применяются круглые скобки, которые имеют высший приоритет.
Внимание: Приоритет выполнения операций в старой версии языка MQL4 несколько отличается от приоритета, принятого в языке Си.
|