Überladen von Operatoren
Operatoren können überladen werden, um eine natürlichere Syntax für eigene Typen anzubieten. Das Überladen von Operatoren ist dann am sinnvollsten, wenn Sie eigene Structs implementieren, die halbwegs primitive Datentypen repräsentieren. So ist zum Beispiel ein eigener numerischer Typ ein exzellenter Kandidat für das Überladen von Operatoren.
Die symbolischen Operatoren, die sich überladen lassen, sind:
+ - * / ++ -- ! ~ % & | ^
== != < << >> >
Implizite und explizite Konvertierungen können genauso überschrieben werden (mit den Schlüsselwörtern implicit und explicit) wie die Literale true und false und die unären Operatoren + und -.
Die zusammengesetzten Zuweisungsoperatoren (z. B. += oder /=) werden automatisch überschrieben, ...