Brauche Hilfe bei den Klassen - Class in C++ ! Verständnis Problem !
-
Thiemo schrieb:
... aber hier bin ich doch nicht mehr in der Klasse, oder .... ?
Doch mittendrinn du implementierst einen constructor der Klasse CKonto.
Kurt
-
Hallo
Wo sollen wir denn auf deine Fragen antworten? Es wäre cool, wenn du dich auf einen Thread festlegen könnstest. Also entweder C++ Forum oder MFC Forum. Wo bei es wohl eher zu C++ gehört.
chrische
-
Hallo ZuK
Dann kann ich also mit :
CKonto::CKonto(unsigned int Kontonummer, double Kontostand, const string& Inhaber)
von überall auf meine Klasse "CKonto" zugreifen ?
Gruß
Thiemo
-
i e
-
Hallo
Du musst eine Instanz deiner Klasse erstellen:
CKonto my_Konto(123,-500,"Thiemo");Dann kannst du mit my_Konto weiterarbeiten.
chrische
-
Thiemo schrieb:
Dann kann ich also mit :
CKonto::CKonto(unsigned int Kontonummer, double Kontostand, const string& Inhaber)
von überall auf meine Klasse "CKonto" zugreifen ?Nein du greifst nicht auf Klassen zu sondern du arbeitest mit Instanzen von Klassen.
K
-
Hallo ZuK
Wie kann man eine Instanz einer Klasse beschreiben ?
Ist die Instanz eine Art Link ?
-
Hallo
Eine Instanz erzeugt man genau so:
CKonto my_Konto;Du musst die dabei deine Klasse als Variablentyp wie zum Beispiel int vorstellen.
chrische
-
Welchen Programmteil meinst Du genau ?
Ich kann "CKonto my_Konto;" in dem Programm nicht finden, welche Anweisung ersetzt es ?
-
Hallo
in deinem "Programm" gibt es diese Zeile nicht, weil mit der Klasse nicht gearbeitet wird. wenn du aber die Funktionen dieser Klasse nutzen möchtest, musst du eine Instanz deiner Klasse erzeugen.
chrische
-
Thiemo schrieb:
Wie kann man eine Instanz einer Klasse beschreiben ?
Vielleicht so
Die Klasse ist der Bauplan die Instanz das Gebäude. ( Du kannst viele verschiedene Häuser mit einem Plan bauen.)
Kurt
-
Das heißt...
ich lege den "Bauplan" in meiner Klasse ab z.B. eine leere Tabelle bzw. eine reihenfolge einer Auflistung, die ich dann für mehrere Programmteile nutzen kann.
-
Thiemo schrieb:
ich lege den "Bauplan" in meiner Klasse ab
die klasse ist der bauplan.
class Foo { public: int a; double b; void fun (); };ist der Bauplan für Objekte, die den Typ "Foo" haben. Jedes Objekt vom Typ "Foo" (=jede Instanz von Foo) hat einen integer namens a, der öffentlich zugänglich ist, einen double namens b, der öffentlich zugänglich ist und eine funktion fun, die keine argumente annimmt und nichts zurückgibt.
Wenn du nach diesem Bauplan ein Objekt vom Typ "Foo" bauen willst, schreibst du:
Foo ein_objekt;ein_objekt ist jetzt die Instanz, das konkrete Objekt, mit dem du arbeiten kannst.
ein_objekt.a = 15; ein_objekt.b = 2.22; ein_objekt.fun();die elementfuntktion fun musst du allerdings erst noch definieren. das geht entweder inline in der klasse, oder z.b. so:
void Foo::fun () { cout << "hf\n"; }
-
ja so wie in deinem Konto Beispiel. Du definierst welche Daten ( Kontostand, Kontonummer, Inhaber ) deine Klasse enthält. Und obendrein definierst du auch noch die Methoden mit denen diese Daten manipuliert werden können.( in deinem Beispiel KontenDatenAnzeigen() ).
Natürlich braucht eine Konto Klasse noch ein Paar nützliche Methoden wie z.B
void einzahlen( int betrag );
void abheben( int betrag );
usw.
Kurt
-
DANKE !!!
Ich werd jetzt mich ans rumspielen machen und Eure Tips versuchen umzusetzten.
Meld mich am Wochenende wieder und sag Euch dann wie´s geklappt hat.