Wie fügt Zeichenkette, Vektor von Strings in C++
Habe ich:
vector<string> *history;
history = new vector<string>[300];
wo die Geschichte enthalten sollte, mehrere strings (bis zu 300).
Dann ich tun, um das hinzufügen einer Zeichenfolge:
std::stringstream sstm;
sstm << frameProc << " ";
string result = sstm.str();
history[xyz]= result; //This line does not work
Aber das funktioniert nicht. Wie sollte ich das tun?
- Das funktioniert nicht, weil
result
ist einstring
, aberhistory
ist ein array vonvector
. - Mir scheint, der OP will nicht, dass ein
vector <vector>
überhaupt. Sie möchten eine einzelne Sammlung von (bis zu) 300string
s. Sie tun das völlig falsche Sache hier. (Schimpfen darüber, nicht das Lesen der docs erstellte)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sind Sie die dynamische Zuweisung ein array von
vector<string>
hier:Was Sie wirklich brauchen, ist ein Vektor von strings:
push_back(result)
(oderpush_back(sstm.str())
.)Wenn Ihre Frage zu beantworten
dann ist es fertig die folgenden Weg
oder
Wenn Sie überlegen, Ihre code-snippet, das dann die richtige Anweisung Aussehen wird
oder
EDIT:
Außerdem dachte ich, dass vielleicht Sie etwas falsch machen, nicht zu verstehen, was Sie tun. Dann betrachten Sie den folgenden code. Vielleicht wird es hilfsbereit.