Приложение 1. Приоритет операций в С++
Приоритет операций -
очерёдность выполнения операций в выражении, при условии, что в
выражении нет явного указания порядка следования выполнения операций (с
помощью круглых скобок).
Если операции имеют одинаковый
приоритет, то очерёдность выполнения таких операций определяется
согласно свойству ассоциативности.
Ассоциативность - направление выполнения операций в случае, если операции имеют одинаковый приоритет.
В таблице показаны основные операции в С++, их приоритет выполнения и ассоциативность.
Приоритет |
Операция |
Ассоциативность |
Описание |
1
|
::
|
слева направо |
унарная операция разрешения области действия |
[ ]
|
операция индексирования |
()
|
круглые скобки |
.
|
обращение к члену структуры или класса |
->
|
обращение к члену структуры или класса через указатель |
2
|
++
|
слева направо |
постфиксный инкремент |
—
|
постфиксный декремент |
3
|
++
|
справа налево |
префиксный инкремент |
—
|
префиксный декремент |
4
|
*
|
слева направо |
умножение |
/
|
деление |
%
|
остаток от деления |
5
|
+
|
слева направо |
сложение |
-
|
вычитание |
6
|
>>
|
слева направо |
сдвиг вправо |
<<
|
сдвиг влево |
7
|
<
|
слева направо |
меньше |
<=
|
меньше либо равно |
>
|
больше |
>=
|
больше либо равно |
8
|
==
|
слева направо |
равно |
!=
|
не равно |
9
|
&&
|
слева направо |
логическое И |
10
|
||
|
слева направо |
логическое ИЛИ |
11
|
?:
|
справа налево |
условная операция (тернарная операция) |
12
|
=
|
справа налево |
присваивание |
*=
|
умножение с присваиванием |
/=
|
деление с присваиванием |
%=
|
остаток от деления с присваиванием |
+=
|
сложение с присваиванием |
-=
|
вычитание с присваиванием |
13
|
,
|
слева направо |
запятая |
Если не уверены в очередности выполнения операций в
выражении, указывайте явно очерёдность выполнения операций, то
есть расставьте круглые скобоки.
|