Präzedenz |
Operator |
Überladbar |
Bezeichnung |
Assoziativität |
Operandentyp |
1 |
Bereichsauflösung [ C++ ] |
|
:: |
nein |
Bereichsauflösung |
links |
Klasse, Struktur, Union, Member |
2 |
Klammerung, Array- und Memberzugriff |
|
++ |
ja |
Postfixinkrement |
links |
numerisch |
|
-- |
ja |
Postfixdekrement |
links |
numerisch |
|
. |
nein |
Punktoperator |
links |
Klasse, Struktur, Union, Member |
|
-> |
ja |
Pfeiloperator |
links |
Klasse, Struktur, Union, Member |
|
[ ] |
ja |
Arrayzugriff |
links |
alle |
|
( ) |
ja |
runde Klammern |
links |
alle, Funktionsaufruf |
|
const_cast<>( ) |
nein |
Constcast [ C++ ] |
links |
Variable beliebigen Datentyps |
|
dynamic_cast<>( ) |
nein |
Dynamiccast [ C++ ] |
links |
Variable beliebigen Datentyps |
|
reinterpret_cast<>( ) |
nein |
Reinterpretcast [ C++ ] |
links |
Variable beliebigen Datentyps |
|
static_cast<>( ) |
nein |
Staticcast [ C++ ] |
links |
Variable beliebigen Datentyps |
|
typeid( ) |
nein |
typeid [ C++ ] |
links |
Variable beliebigen Datentyps |
3 |
Unäre Operatoren |
|
++ |
ja |
Präfixinkrement |
rechts |
numerisch |
|
-- |
ja |
Präfixdekrement |
rechts |
numerisch |
|
& |
ja |
Adressoperator |
rechts |
Variable beliebigen Datentyps |
|
* |
ja |
Dereferenzierungsoperator |
rechts |
Variable beliebigen Datentyps |
|
! |
ja |
Logisches Nicht |
rechts |
integral |
|
~ |
ja |
Einskomplement, bitweise NOT |
rechts |
integral |
|
(type) |
ja |
CastOperator |
rechts |
alle |
|
sizeof |
nein |
Größenoperator |
rechts |
alle |
|
+ |
ja |
unäres Plus |
rechts |
numerisch |
|
- |
ja |
unäres minus |
rechts |
numerisch |
|
new, new[] |
ja |
Speicherauf dem Heap allokieren [ C++ ] |
rechts |
Objekt, Array |
|
delete, delete[] |
ja |
Speicherauf dem Heap freigeben [ C++ ] |
rechts |
Objekt, Array |
4 |
Pointer to member [ C++ ] |
|
.* |
ja |
Pointer to member |
links |
Klasse, Struktur, Union, Member |
|
->* |
ja |
Pointer to member |
links |
Klasse, Struktur, Union, Member |
5 |
Multiplikation/Division/Modulo |
|
* |
ja |
Multiplikation |
links |
numerisch |
|
/ |
ja |
Division |
links |
numerisch |
|
% |
ja |
Modulo |
links |
numerisch |
6 |
Addition/Subtraktion |
|
+ |
ja |
Addition |
links |
numerisch, String |
|
- |
ja |
Subtraktion |
links |
numerisch |
7 |
ShiftOperatoren |
|
<< |
ja |
LinksShift |
links |
integral |
|
>> |
ja |
RechtsShift (sign-fill) |
links |
integral |
8 |
Relationale Operatoren 1 |
|
< |
ja |
kleiner |
links |
boolesch |
|
<= |
ja |
kleiner gleich |
links |
boolesch |
|
> |
ja |
größer |
links |
boolesch |
|
>= |
ja |
größer gleich |
links |
boolesch |
9 |
Relationale Operatoren 2 |
|
= = |
ja |
Vergleich auf Gleichheit |
links |
alle |
|
!= |
ja |
Vergleich auf Ungleichheit |
links |
alle |
10 |
bitweise AND |
|
& |
ja |
bitweises AND |
links |
integral |
11 |
bitweise XOR |
|
^ |
ja |
bitweises XOR |
links |
integral |
12 |
bitweise OR |
|
| |
ja |
bitweises OR |
links |
integral |
13 |
boolesches AND (shortcut-evaluation) |
|
&& |
ja |
boolesches AND |
links |
boolesche Ausdrücke |
14 |
boolesches OR (shortcut-evaluation) |
|
| | |
ja |
boolesches OR |
links |
boolesche Ausdrücke |
15 |
bedingter Ausdruck |
|
? : |
nein |
bedingter Ausdruck |
rechts |
boolesch ? alle : alle |
16 |
Zuweisung und zusammengesetze Zuweisungsoperatoren |
|
= |
ja |
Zuweisung |
rechts |
alle |
|
+= |
ja |
AdditionsZuweisung |
rechts |
numerisch |
|
-= |
ja |
SubtraktionsZuweisung |
rechts |
numerisch |
|
*= |
ja |
MultiplikationsZuweisung |
rechts |
numerisch |
|
/= |
ja |
DivisionsZuweisung |
rechts |
numerisch |
|
%= |
ja |
ModuloZuweisung |
rechts |
numerisch |
|
<<= |
ja |
LinksShiftZuweisung |
rechts |
integral |
|
>>= |
ja |
RechtsShiftZuweisung |
rechts |
integral |
|
&= |
ja |
bitweise/logische AND-Zuweisung |
rechts |
integral, boolesch |
|
^= |
ja |
bitweise/logische XOR-Zuweisung |
rechts |
integral, boolesch |
|
|= |
ja |
bitweise/logische OR-Zuweisung |
rechts |
integral, boolesch |
17 |
Exception werfen [ C++ ] |
|
throw |
nein |
Exception werfen |
rechts |
Exceptionobjekte |
18 |
Kommaoperator |
|
, |
ja |
Kommaoperator |
links |
numerisch |