Elemente hinzufügen: push_back()
Ein Vektor muss nicht immer gleich viele Elemente haben. Die Methode push_back() fügt am Ende eines Vektors ein Element hinzu. Das neue Element schreibst du in die Klammern:
std::vector<std::string> automarken = {"Mercedes", "Opel"};
automarken.push_back("Volvo");
std::cout << automarken[2] << std::endl;
std::cout << automarken.size() << std::endl;Das gibt aus:
Volvo
3Lies automarken.push_back("Volvo") von links nach rechts: Rufe für den Vektor automarken die Methode push_back() auf, die "Volvo" an sein Ende anfügt. Der Vektor ändert sich, und mit ihm seine Größe. Das neue Element muss den Typ der Elemente des Vektors haben: Zu einem Vektor aus Texten fügst du Texte hinzu, zu einem Vektor aus Zahlen Zahlen.
So kannst du einen Vektor auch Schritt für Schritt aufbauen, beginnend mit einem leeren Vektor:
std::vector<int> punkte;
punkte.push_back(12);
punkte.push_back(7);
std::cout << "Anzahl: " << punkte.size() << std::endl;
std::cout << "Letzter: " << punkte[punkte.size() - 1] << std::endl;Das gibt aus:
Anzahl: 2
Letzter: 7Achtung: Einem Index hinter dem Ende etwas zuzuweisen, fügt kein neues Element hinzu. Würdest du in diesem Beispiel punkte[2] = 30; schreiben, hätte der Vektor weiterhin zwei Elemente, und der Wert 30 würde irgendwo in den Speicher hinter seinem Ende geschrieben. Das Programm könnte sich dann unvorhersehbar verhalten oder abstürzen. Mit punkte.at(2) = 30; würde das Programm wenigstens mit einem Fehler abbrechen. Füge neue Elemente immer mit push_back() hinzu.
So schreibst du es:
Anweisungen
- 1
Eva ist ins Team gekommen. Füge
"Eva"mit der Methodepush_back()am Ende vonkollegenhinzu. - 2
Gib die Anzahl der Kollegen und den letzten von ihnen untereinander aus, sodass die Ausgabe die Zeilen
Kollegen: 4undLetzter: Evaenthält. Finde den letzten Kollegen mitsize() - 1.