Sponny
Lt. Commander
- Registriert
- März 2008
- Beiträge
- 1.052
Hallo liebe Community,
ich habe bereits nachfolgenden code geschrieben:
Ich möchte das Attribut "color farbe" an mein objekt vererben.
Ich habe dies bereits in meiner Oberklasse deklariert.
Sobald ich aber nun "color farbe" aus meinem objekt nehme, bekomme ich einen fehler:
"der Konstruktor des Objekts möchte farbe initialisieren. Dies geht aber anscheinend nicht, da ich dieses nicht in objekt deklariert habe"
Anschließend würde ich gerne über die Methode get_color() aus meiner oberklasse die farbe des objekts abrufen können.
Weiß jemand wo mein Fehler ist?
Vielen Dank im Voraus.
ich habe bereits nachfolgenden code geschrieben:
using namespace std;
typedef enum color{ROT, GRUEN, GELD, BLAU}color;
class oberklasse {
public:
color farbe; /* color ist vom typ enum */
color get_color(){return farbe;}
virtual float foo() = 0;
virtual ~oberklasse(){};
};
class objekt : public oberklasse{
private:
float laenge;
float breite;
public:
objekt():laenge(0), breite(0), farbe(BLAU){};
objekt(float l, float b, color f):laenge(l), breite(b), farbe(f){};
~objekt(){};
float get_laenge(){return laenge;};
float get_breite(){return breite;};
char print_farbe();
float foo(){
return laenge*breite;
}
};
Ich möchte das Attribut "color farbe" an mein objekt vererben.
Ich habe dies bereits in meiner Oberklasse deklariert.
Sobald ich aber nun "color farbe" aus meinem objekt nehme, bekomme ich einen fehler:
"der Konstruktor des Objekts möchte farbe initialisieren. Dies geht aber anscheinend nicht, da ich dieses nicht in objekt deklariert habe"
Anschließend würde ich gerne über die Methode get_color() aus meiner oberklasse die farbe des objekts abrufen können.
Weiß jemand wo mein Fehler ist?
Vielen Dank im Voraus.
Zuletzt bearbeitet: