Wie =-Operator für Basisklasse aufrufen?



  • Hi,
    kann mir jemand einen Tipp geben? Ich weiß nicht, wie ich den =-Operator einer Basisklasse aufrufen soll.

    Also Beispiel:

    class CBasis
    {
    // ...
    CBasis &operator = (CBasis 😉 {....}
    // ... mehrere Membervariablen ...
    }

    class CTest: public CBasis
    {
    //....
    CTest &operator = (CTest *pTest)
    {
    // Wie hier =-Operator von der Basisklasse CBasis aufrufen?
    }
    //....
    }

    Wie kann ich innerhalb der Methode des =-Operators von CTest den =-Operator der Basisklasse CBasis aufrufen?
    Einen Workaround habe ich natürlich: Ich definiere zusätzlich in der Basisklasse eine Hilfsmethode

    public: CBasis *GetThis() {return this;}

    und schreibe dann in der =-Methode der abgeleiteten Klasse

    *GetThis() = pTest->GetThis();

    ok, das funktioniert, aber geht das nicht auch eleganter ohne Hilfsmethode?

    Gruß Frank



  • CBasis::operator=(pTest);



  • CBasis::operator=(...);
    


  • Hach ja ... das Leben kann so einfach sein! Vielen Dank! 🙂 🙂 🙂


Anmelden zum Antworten