Hilfe!!! Fehler!



  • Hallo,

    Bin noch ziemlicher C++ Anfänger, und bekomme diese Fehler nicht weg.

    http://pastebin.com/hYDTJDgF

    Zeile 69:

    ""mname"" ist kein nicht statischer Datenmember bzw. nicht statische Basisklasse von ""Vollzahler"".

    Für die Klasse ""Mitglied"" ist kein Standardkonstruktor vorhanden.

    Kein geeigneter Standardkonstruktor verfügbar.

    Danke. 🙂



  • Hallo,

    du kannst die Member der Basisklassen (und auch die Basisklasse selbst) initialisieren, indem du den Konstruktor der jeweiligen Basisklassen in der Initialisierungsliste aufrufst. Konkret aussehen täte das so:

    Vollzahler(string name, double beitrag) : Mitglied(name), jahresbeitrag(beitrag) {}
    

    Das löst auch das Problem mit dem fehlenden Standardkonstruktor, da der Compiler versucht, den Standardkonstruktor der Basisklassen - sprich, den ohne Parameter - aufzurufen, sofern du es ihm in der Initialisierungsliste nicht anders nahe legst.

    Grüße



  • Super Danke hat funktioniert. 🙂 Wenn ich jetzt 2 Strings in der Klasse Mitglied hätte würden dann beide initialisiert werden ?



  • Wenn du in der Klasse einen entsprechenden Konstruktor definierst und diesen auch aufrufst, dann ja.


Anmelden zum Antworten