none
Optimierung für den/die Konstruktor/-en (C++ Visual Studio 2012) RRS feed

  • Frage

  • Hallo liebe Community, bin grade am lernen von C++ und hab grade die mehrfache Vererbung abgeschlossen. In dem Listing aus dem Buch gab es 2 Klassen und eine Klasse, die von den Beiden erbt (CJaeger, CMinenleger...von diesen beiden erbt CHybrid (Sollen Raumschiffe darstellen :D))

    Hier zu meiner Frage:

    class CJaeger
    {
    	public:
    		CJaeger();
    		virtual ~CJaeger();
    		virtual void ZeigeMunition();
    		void Feuern();
    		
    	protected:
    		int m_Raketen;
    };
    
    class CMinenleger
    {
    	public:
    		CMinenleger();
    		virtual ~CMinenleger();
    		virtual void ZeigeMunition();
    		void LegeMine();
    
    	protected:
    		int m_Minen;
    };
    
    class CHybrid : public CJaeger, public CMinenleger
    {
    	public:
    		CHybrid();
    		~CHybrid();
    		
    		void WaffenAbfeuern();
    		void ZeigeMunition();
    
    };

    Wenn ich nun ein Hybrid erstelle, dann werden die beiden Konstruktoren von CMinenleger und CJaeger ebenfalls aufgerufen, jedoch möchte ich dies garnicht, ich möchte lediglich ein CHybrid erstellen. Wenn ich versuche die beiden Konstruktoren virtual zu setzen, dann funktioniert dies nicht. Hat jemand von euch ne Lösung?

    Der Code an sich ist ja garnicht falsch, ist genau so wie im Buch jedoch möchte ich ihn optimieren :)

    LG Eizo :)

    Freitag, 20. Februar 2015 21:32

Antworten

Alle Antworten