string class array?
-
Hallo!
Eine möglicherweise banale Frage: wie bekomme ich möglichst einfach ein Array aus Strings (keine char arrays; string class) unbestimmter Länge?Der "workaround" mittels eines
struct stringarray {string mystring; ... } stringarray meinarray[100];Funktioniert zwar auch, erscheint aber doch sehr unelegant.
(per google hab ich dazu nichts gefunden.. string und array gibt 99% infos zu den char-arrays).
-
Tarjan schrieb:
Hallo!
Eine möglicherweise banale Frage: wie bekomme ich möglichst einfach ein Array aus Strings (keine char arrays; string class) unbestimmter Länge?Nutze dafür den Container std::vector!
Dieser verhält sich wie ein normales Array, kümmert sich allerdings selbst um seine Speicherverwaltung.Beispiel:
#include <vector> // dieser header wird benötigt using namespace std; int main() { vector<string> vec; // einen dynamischen Vektor mit Elementen vom Typ std::string anlegen. vec.push_back("Hallo Welt!"); // erstes Element "reinhauen" // weitere Elemente am Ende einfügen. string s1 = "Hannes", s2 = "Paul"; vec.push_back(s1); vec.push_back(s2); // alle Elemente ausgeben: cout << "\n Elemente von vec: "; for(size_t i = 0; i < vec.size(); ++i) cout << vec[i] << ", "; cout << endl; }Siehe dazu auch http://www.cppreference.com/cppvector/index.html und/oder verwende google mit dem Suchwort std::vector :).
Gruß Caipi
-
Ah, besten Dank!