„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Warum kann ich den „Operator“ nicht erstellen?

Warum kann ich den „Operator“ nicht erstellen?

Veröffentlicht am 06.11.2024
Durchsuche:324

Why Can\'t I Make the `operator

Implementieren eines virtuellen Operators

Der Bedarf an einem virtuellen Operator

Das Dilemma der freien Funktionen

Das Problem entsteht, weil „operator

Eine Lösung über Indirektion

Um dieses Dilemma zu lösen, Erwägen Sie das Hinzufügen einer virtuellen Memberfunktion, die das gewünschte Ausgabeverhalten kapselt:

class MyClass {
public:
    virtual void print(ostream& out) const; // Virtual output function
};

Angepasster Operator mit virtuellem Verhalten

Wenn die virtuelle Memberfunktion vorhanden ist, können Sie den Operator

ostream& operator

Dieser Ansatz behält die korrekte Parameterreihenfolge für die freie Funktion „Operator“ bei und ermöglicht gleichzeitig die Anpassung des Ausgabeverhaltens über die virtuelle Memberfunktion. Unterklassen können die Druckfunktion überschreiben, um ihre eigene benutzerdefinierte Ausgabeformatierung zu implementieren.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3