Klassen
-
Nehmen zur zeit klassen durch & haben folgendes Problem:
Mein Ansatz:
#include <iostream.h>
class Sparschwein
{
public:
int leeren();
int einwerfen();
int print();private:
int inhalt;
};int Sparschwein::leeren()
{
inhalt = 0;
}int Sparschwein::einwerfen()
{
return einwerfen;
}int Sparschwein::print()
{
return print;}
int main()
{Sparschwein a, Sparschwein b, Sparschwein c;
a.leeren();
cout<<"Der Inhalt des Sparschwein beträgt "<<a.leeren()<<" Cent!\n";
b.einwerfen(10);
cout<<"Der Inhalt des Sparschweins beträgt "<<b.einwerfen()<<" Cent!\n";
c.print(2,4,6);
cout<<"Der inhalt des Sparschweins beträgt "<<c.print()<<" 1 Cent Münzen,"<<
Emma.print()<<" 5 Cent Münzen und "<<c.print()<<" 10 Cent Münzen!!\n";
return 0;
}Meine Frage ist nun wie ich in c.print die zahlen 2,4,6, zuweisen kann dass 2-1cent, 4-5cent....!!Aufzählungsoperator "enum"?!?
hoffe mir kann wer weiterhelfen!!
-
Hallo!
Du kannst deiner Klasse Sparschwein Elemente zuweisen, zu jedem dieser Elemente kannst du dann eine Methode schreiben und so nach den einzelnen Münzen abfragen:
#include <iostream.h> class Sparschwein { public: int leeren(); int einwerfen(); int printEinCent(); int printZweiCent(); int printFuenfCent(); int printAlles(); private: int Eincent, ZweiCent, FuenfCent; //...... int Inhalt; }; void Sparschwein::leeren() { Inhalt = 0; // Und alle anderen = 0 } void Sparschwein::einwerfen(int Muenze) { // hier enum oder switch, dann jeweils muenzen hochzählen und inhalt neu // errechnen } oder void Sparschwein::einwerfen(int Einer, int Zweier, int Fuenfer.....) { // Jeweils zuweisen; } int Sparschwein::printAlles() { return Inhalt; } int Sparschwein::printFuenfCent() { return FuenfCent; } int Sparschwein::printZweiCent() { return ZweiCent; } int Sparschwein::printEinCent() { return EinCent; } int main() { Sparschwein a, b, c; a.leeren(); cout<<"Der Inhalt des Sparschwein beträgt "<<a.leeren()<<" Cent!\n"; b.einwerfen(10); cout<<"Der Inhalt des Sparschweins beträgt "<<b.einwerfen()<<" Cent!\n"; // Bei ersten variante: cout<<"Der inhalt des Sparschweins beträgt "<<c.printEinCent()<<" 1 Cent Münzen,"<< c.printFuenf()<<" 5 Cent Münzen und "<<c.printZehner()<<" 10 Cent Münzen!!\n"; // Bei zweiter Variante: musst du dir was zur Rückgabe einfallen lassen! return 0; }
-
Danke, hat mir grundsätzlich wirklich sehr geholfen & es läuft auch schon!!
Würde es aber trotzdem gerne auch mit "enum" schaffen, nur weiß ich nicht genau wie ich das dann verwende und vor allem aufrufe - klammerung...!!hätte es so gemacht - funkt aber nicht:
enum muenzen {1,5,10};
muenzen(5);
stimmt das grundsätzlich so oder wo liegt der fehler?!
Danke im voraus!!!
-
Enums müssen gültige Bezeichner sein, zB
enum muenzen { zwei = 1, vier = 5, sechs = 10 };