Membervariablen
-
Hallo!
ich bin grade beim Programmieren einer Klasse (mache das zum ersten Mal!). Hierbei habe ich eine header-datei mit den Membervariablen und den Methoden, eine cpp-datei mit allen Methoden und ein main-programm in welchem ich die Klasse anwende. Ich hoffe das ist soweit richtig. Ich weiß jetzt nur nicht, was alles zu den Membervariablen gehört (z.B. alle in Methoden verwendeten Variablen? und/oder alle an Methoden übergebenen Parameter?). Ich hoffe es kann mir jemand helfen! Danke!
Johanna
-
Membervariablen sind die Variablen für die ganze Klasse. Loakel Variablen aus den Methoden keinesfalls als Membervariable deklarieren (dann wären sich außerdem nicht mehr lokal).
//z.B. class Mensch { private: int alter; double groeße; public: Mensch(); void wachsen(); };
Gruß
-
Also so ganz hab ich das noch nicht verstanden was ich jetzt als
Hallo nochmal!Membervariable deklarieren muss. Hier mal ein ausschnitt meiner Methoden:
public: // Methoden double length (TMatrix a); double sum (TMatrix a); double sum (vector<double> a); double mean (TMatrix a); double mean (vector<double> a); double strecke(double yi, double xi, double yj, double xj); double riwi_pi(double yi, double xi, double yj, double xj); double mbl(double B, double A, double e2);
Sind jetzt alle übergebenden Parameter Membervariablen? und wie mache ich das hier z.B. mit "a"? Ich kann es ja nicht einmal als TMatrix und einmal als vector deklarieren???
-
Membervariablen sind nur die, die du in deiner Klassendefinition anlegst.
z.b.class MyClass { private: int x; //Membervariable double y; //Membervariable public: MyClass(void);//Methode (eigentlich Konstruktor) void show (int);//Methode mit Aufrufparameter }; MyClass::MyClass(void) { x=0; y= 0.0; //belegen der Membervariablen mit Werten } void MyClass::show (int a) { cout<<a<<endl; //Ausgabe von a (welches keine Membervariable ist, sondern // nur an show übergeben wurde } int main () { MyClass Testobjekt; Testobjekt.show(4);//4 wird übergeben und in a wird eine Kopie davon gespeichert return 0; }
-
Heißt das, dass ich alle Variablen, die ich in meinen Methoden verwende als Membervariablen deklariere? Aber wiederspricht sich das nicht mit
FireFlow schrieb:
Loakel Variablen aus den Methoden keinesfalls als Membervariable deklarieren (dann wären sich außerdem nicht mehr lokal).
-
Ich glaube dir fehlt da einwenig das Verständnis für C++.
Welchen Skope welche Variable hat, was lokale Variablen sind etc.Evtl. liest du dir mal ein Tutorial durch...
-
Ich hab schon so viel über Grundlagen gelesen, lerne es aber am besten, wenn ich es selbst ausprobiere. Was sind denn jetzt genau Membervariablen und was lokale Variablen? Und wie gehe ich am besten vor, wenn ich meine Membervariablen deklarieren will?
-
OMG.
Also Membervariablen sind TEILE deiner Klasse.
Nehmen wir mal dich als Klasse.
Du hast einen Namen, einen Vornamen, einen Geburtstag, Verweise auf deine Familie.
Du hast Variablen für deine Gefühle und auch eine für deinen IQ.
Du hast Variablen in denen steht welche Sprachen du kannst uvm.Eben Sachen die dich beschreiben.
Die Umgebungstemparatur ist zwar für dich wichtig - beschreibt dich aber nicht.
Lokale Variablen sind alle Variablen, die innerhalb einer Funktion erstellt werden. Der Scope ist nur die Funktion.
class person { public: person(string prename, string surname); ~person(); unsigned int getAlter() const; string getName() const; string getVorname() const; /* .. ... .. */ void reagiere_auf_Spritpreis(double Spritpreis); private: string vorname; string nachname; unsigned int alter; };