Beliebig viele Objekte anlegen C++ 

Status
Für weitere Antworten geschlossen.

fexs

Registered +
Registriert
Mai 2009
Beiträge
316
Hallo,
ich versuche gerade ein Programm zu schreiben das beliebig viele Personen erfassen kann.

Ich habe eine Klasse namens Personen. Der Konstruktor sieht z.B. so aus:

Personen::Personen(string name, int alter, double gewicht)...

In der main() kann ich es ja dann so aufrufen:
Personen person ("einName", 50, 80.5);

Nun will ich aber in einer Schleife beliebig viele Personen abspeichern können. Ich habe da an Vektoren gedacht aber wie genau es funktioniert bekomme ich nicht raus.

Das hier funktioniert schon mal nicht :D :
vector
person;
person.push_back("einName", 50, 80.5);

Da zu dem Programm eigentlich noch mehr dazugehört müssen die Personen aber schon in einer Klasse abgelegt werden.

Kann mir da jemand helfen?
Bis dann :)
 
Die push_back Funktion deines Vektors erwartet ein Personen-Objekt, du uebergibst allerdings einen String, einen Integer und ein Double.

Vielleicht hilft dir das hier weiter:

Code:
vector
 vp;

for(int i = 0; i Personen p("test", i, i*5.2);
vp.push_back(p);
//alternativ: vp.push_back(Person("test", i, i*5.2));
}

Als Beweis, dass diese Personen auch wirklich im Vektor gespeichert worden sind:
Code:
for(vector
::iterator it = vp.begin(); it != vp.end(); ++it) {
cout name alter gewicht  // oder falls du eine print funktion besitzt:
it->print();
}
 
Hey vielen Dank, das hat mein Problem komplett gelöst.
Man bin ich blöd -.-
Dann kann ich das jetzt endlich fertig machen :)
Mfg
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben Unten