Hallo zusammen,
ich hatte zwar schon ne Frage wegen in Enum, aber in c++ kapiere ich gar net wie das funktionieren soll.
also:
in der Header-Datei ist im public bereich ein enum Auto = {mercedes=1, opel=2} definiert.
im private bereich ist eine Variable vom typ Auto deklariert.
Die Klasse heisst: auto.
Im Construktor sage ich einfach:
In der .cpp Datei impelementiere ich das:
so und nun kommen die Probleme beim Instanzieren.
1.
das funktioniert:
auto meinAuto(yy,auto:
pel,dd);
2.
das funktioniert nicht:
auto meinAuto(yy,auto::Auto.opel,dd);
warum********
3.
Eigentlich will ich nur eine Zahl eingeben, also entweder 0 oder 1.
und sagen:
auto meinAuto(yy,1,dd);
Dann soll halt "opel" ausgewählt werden.
Klar ist "1" nciht vom Typ "Auto", aber ich kann ja auch nicht "opel" von Aussen schreiben.
Wie kann ich von aussen bestimmen, welchen Enum-Wert ich nehmen muss****
Etwa nur mit:
if 1 dann enum.opel?
ich hatte zwar schon ne Frage wegen in Enum, aber in c++ kapiere ich gar net wie das funktionieren soll.
also:
in der Header-Datei ist im public bereich ein enum Auto = {mercedes=1, opel=2} definiert.
im private bereich ist eine Variable vom typ Auto deklariert.
Die Klasse heisst: auto.
Im Construktor sage ich einfach:
Code:
class auto{
public:
enum Auto{ mercedes=1, opel }; // symbol. Konstanten für die Monate
auto();
auto(int tuer, Month month, int reifen);
private:
int tuer;
auto m;
int reifen;
};
In der .cpp Datei impelementiere ich das:
Code:
auto::auto(int tt, auto aa, int rr=0) {
tuer=tt;
auto=aa;
reifen=rr;
}
so und nun kommen die Probleme beim Instanzieren.
1.
das funktioniert:
auto meinAuto(yy,auto:

2.
das funktioniert nicht:
auto meinAuto(yy,auto::Auto.opel,dd);
warum********
3.
Eigentlich will ich nur eine Zahl eingeben, also entweder 0 oder 1.
und sagen:
auto meinAuto(yy,1,dd);
Dann soll halt "opel" ausgewählt werden.
Klar ist "1" nciht vom Typ "Auto", aber ich kann ja auch nicht "opel" von Aussen schreiben.
Wie kann ich von aussen bestimmen, welchen Enum-Wert ich nehmen muss****
Etwa nur mit:
if 1 dann enum.opel?