Binäre Operatoren
Die folgende Tabelle enthält eine Liste der Operatoren überladen werden können.
Redefinable binäre Operatoren
Operator |
Name |
---|---|
, |
Komma |
!= |
Ungleichheit |
% |
Modulooperator |
%= |
Modulo und Zuweisung |
& |
Bitweises AND |
&& |
Logisches AND |
&= |
Bitweises AND/assignment |
* |
Multiplikation |
*= |
Multiplikation und Zuweisung |
+ |
Addition |
+= |
Addition und Zuweisung |
– |
Subtraktion |
–= |
Subtraktion und Zuweisung |
– > |
Memberauswahl |
– >* |
Zeiger-zu-Member Auswahl |
/ |
Division |
/= |
Division und Zuweisung |
< |
Kleiner als |
<< |
Nach links verschieben |
<<= |
Verschiebung nach links und Zuweisung |
<= |
Kleiner oder gleich |
= |
Zuweisung |
== |
Gleichheit |
> |
Größer als |
>= |
Größer oder gleich |
>> |
Nach rechts verschieben |
>>= |
Verschiebung nach rechts und Zuweisung |
^ |
Exclusive OR |
^= |
Exklusive OR/assignment |
| |
Bitweises inklusives OR |
|= |
Bitweises inklusives OR/assignment |
|| |
Logisches OR |
Um eine Funktion für binäre Operatoren als nicht statische Member deklarieren, müssen Sie sie im Format deklarieren:
TYPEOperatorRET op(**arg )
wo RET TYPEop ist, ist der Rückgabetyp einer der Operatoren, die in der vorangehenden Tabelle aufgeführten und arg ist ein Argument eines beliebigen Typs.
Um eine Funktion für binäre Operatoren als globale Funktion zu deklarieren, müssen Sie sie im Format deklarieren:
TYPEOperatorRET op(arg1und** arg2 )
Dabei handelt es sich um opRET und TYPE als Operator für Mitglieder arg1 und Funktionen beschrieben, arg2 und Argumente sind.Mindestens eines der Argumente muss den Klassentyp sein.
Hinweis |
---|
Es gibt keine Einschränkung für die Rückgabetypen der binären Operatoren. jedoch, geben die meisten benutzerdefinierten binären Operatoren entweder einen Klassentyp oder einen Verweis auf einen Klassentyp zurück. |