Priorita operátorů v C++
Z cppreference.com
< cpp
V následující tabulce je vypsána priorita a asociativita operátorů jazyka C++. Operátory jsou vypsány s odshora dolů klesající prioritou.
Přednost | Operátor | Popis | Asociativita |
---|---|---|---|
1 | ::
|
scope resolution | zleva |
2 | ++ --
|
postfixové operátory inkrementace a dekrementace | |
()
|
operátor volání funkce | ||
[]
|
operátor přístupu k prvku pole | ||
.
|
výběr členu přes referenci | ||
->
|
výběr členu přes ukazatel | ||
3 | ++ --
|
prefixové operátory inkrementace a dekrementace | zprava |
+ −
|
unární plus a mínus | ||
! ~
|
logická a bitová negace | ||
(type)
|
operátor přetypování | ||
*
|
operátor dereference | ||
&
|
získání adresy prvku | ||
sizeof
|
velikost prvku | ||
new , new[]
|
dynamická alokace paměti | ||
delete , delete[]
|
dynamicka dealokace paměti | ||
4 | .* ->*
|
ukazatel na člen | zleva |
5 | * / %
|
operátory násobení, dělení a zbytek po dělení | |
6 | + −
|
operátory součtu a rozdílu | |
7 | << >>
|
bitový posun doleva a doprava | |
8 | < <=
|
Relační operátory < a ≤ | |
> >=
|
Relační operátory > a ≥ | ||
9 | == !=
|
Relační operátory = a ≠ | |
10 | &
|
bitové AND | |
11 | ^
|
bitové XOR (výlučný součet) | |
12 | |
|
bitové OR | |
13 | &&
|
logické AND | |
14 | ||
|
logické OR | |
15 | ?:
|
ternární operátor[1] | zprava |
=
|
přímé přiřazení | ||
+= −=
|
přiřazení přičtením a odečtením | ||
*= /= %=
|
Přiřazení násobením, podílem a zbytkem | ||
<<= >>=
|
přiřazení bitovým posunem doleva a doprava | ||
&= ^= |=
|
přiřazení bitovou operací AND, XOR a OR | ||
16 | throw
|
operátor throw (pro výjimky) | |
17 | ,
|
operátor čárka | zleva |
[1]Výraz uprostřed ternárního operátoru (mezi ?
a :
) je brán jako kdyby byl v závorce: jeho relativní přednost k ?:
je ignorována.