vererbung und klassen
-
Hi, ich lerne gerade C++ und ich komm einfach nicht dahinter, was in folgendem Beispiel falsch sein soll:
class B { private: float d; public: B(float _x) : d(_x) {} }; class A : public B { private: int i; public: A(int _k) : i(_k) {} }; int main() { A a(2); return 0; }Ich dachte immer, der Konstruktor wird nicht mit vererbt

Wäre für ein bisschen Hilfe sehr dankbar

-
Hallo,
was heißt Konstruktor nicht mitvererbt? Welchen Sinn hat dann die Vererbung, ohne Konstruktor der Elternklasse? Du musst also den Konstruktor von B in der Initialisierungsliste von A aufrufen.
Gruß Borschtsch
-
A(int _k) : i(_k) {} //hier wird der Defaultkonstruktor von B aufgerufen //den es aber nicht gibt => FEHLER A(int _k) : i(_k), B(_k) //expliziter Aufruf des Basiskonstruktors! {}
-
dankeschön
