Ausdrücke und C++

Aus Appmethod Topics
Wechseln zu: Navigation, Suche

Nach oben zu Ausdrücke - Index

C++ erlaubt das Überladen von einigen C-Standardoperatoren wie in Thema Überladen von Operatorfunktionen erläutert. Ein überladener Operator verhält sich in spezieller vordefinierter Art und Weise, wenn er in Ausdrücken eines Klassentyps verwendet wird. So könnte zum Beispiel der Gleichheitsoperator == in der Klasse complex so definiert werden, dass er zwei komplexe Zahlen auf Gleichheit überprüft, ohne dass seine normale Verwendbarkeit in Datentypen, die keiner Klasse angehören, berührt wird.

Ein überladener Operator ist als Funktion implementiert; diese Funktion bestimmt den Typ der Operanden, den L-Wert und die Auswertungsreihenfolge, die angewendet werden, wenn der überladene Operator benutzt wird. Das Überladen kann die Abarbeitungsreihenfolge eines Operators jedoch nicht ändern. C++ erlaubt auch benutzerdefinierte Konvertierungen zwischen Klassenobjekten und Grundtypen. Beachten Sie, dass einige der C-Regeln für Operatoren und Konversionen nicht unbedingt für Ausdrücke in C++ zutreffen.