PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : string array....



stocki
05-01-2005, 20:58
hi...!!!

wenn ich verschiedene strings habe.. wie kann ich die als array speicher? geht das überhaupt? oder muss ich das mit nem vector machen? aber wie geht das mit vector? kann mir einer da ein gutes tutorial sagen?? danke...!!!

wraith
06-01-2005, 09:40
wenn ich verschiedene strings habe.. wie kann ich die als array speicher? geht das überhaupt?

Du kannst von std::string (nehme einfach mal das mit string std::string gemeint ist) ebenso Arrays erstellen, wie mit int,float,..., also z.b std::string strArray[10];


oder muss ich das mit nem vector machen? aber wie geht das mit vector?
Nur wenn du die Eigenschaften von std::vector brauchst (zur Laufzeit vergrößern/verkleinern, ...).
Ansonsten kannst du ihn fast wie ein Array verwenden


#include <vector>
#include <string>
...
std::vector<std::string> strVec(10);
strVec[0] = "Hello World";

stocki
06-01-2005, 17:29
ja danke schon mal.... aber noch ne frage...??

wenn ich jetzt das schreibe...?


std::vector<std::string> strVec(10)

ist doch der vector 10 zeichen lang oder? verändert der jetzt seine grösse automatisch? oder muss ich das selbst tun?

wraith
06-01-2005, 17:36
ist doch der vector 10 zeichen lang oder?

Es hat 10 std::string(s).


verändert der jetzt seine grösse automatisch? oder muss ich das selbst tun?
Nein, der macht es nicht automatisch, wenn du das so meinst, daß wenn du auf eine nicht existente Position zugreifst, er sich vergrößert (solche Container gibt es auch).

Wenn du eine string mehr im vector haben willst, dann benutzt du vec.push_back("Neuer String"); und er hängt ihn am Ende an.
Alternativ kannst du auch vec.resize(Größe); aufrufen, um den vector eine neue Größe zu geben.