Funktionen Redefinieren



  • Moin interessierter!
    Ich habe folgendes Problem:
    Eine Funktion einer Basisklasse soll eine redefinierte Funktion von einer abgeleiteten Klasse aufrufen.
    Sagt mir nur, mit welcher Technik das zu lösen ist - den Rest lern ich schon selbst.

    EDIT: Huch! Ich dachte ich wär aufm C++ Board.



  • DennisB schrieb:

    Eine Funktion einer Basisklasse soll eine redefinierte Funktion von einer abgeleiteten Klasse aufrufen.
    Sagt mir nur, mit welcher Technik das zu lösen ist - den Rest lern ich schon selbst.

    virtuelle Funktionen:

    class A {
      virtual void foo();
      void bar() { foo(); }
    };
    
    class B {
      virtual void foo(); // Redefinierung
    };
    ...
    A* a = new B;
    a->bar();  // bar ruft letztlich (weil virtual) B::foo auf
    

    wenn man mal davon absieht, dass das nicht hierher gehört -- in C gibts keine Klassen --, und dass das sehr unklar formuliert ist, so dass ich raten musste, was du überhaupt meinst


Anmelden zum Antworten