Fehler bei Stringstream
-
Hallo!
Ich wollte mit einem Stream einen String mit einem int verketten. Das hab ich so gemacht:
std::string result, prefix, postfix; std::stringstream outputfilename; prefix="U://Matlab//plot_data"; postfix=".m"; outputfilename << prefix << amountofoutput << postfix; result = outputfilename.str();Weil stand das sei standard C++:
http://stackoverflow.com/questions/191757/c-concatenate-string-and-int
(2. Antwort unter Punkt 4).Wieso krieg ich dann Fehler:
Fehler 4 error C2079: 'outputfilename' verwendet undefiniertes class 'std::basic_stringstream<_Elem,_Traits,_Alloc>'
Fehler 5 error C2678: Binärer Operator '<<': Es konnte kein Operator gefunden werden, der einen linksseitigen Operanden vom Typ 'int' akzeptiert (oder keine geeignete Konvertierung möglich)
Fehler 6 error C2228: Links von ".str" muss sich eine Klasse/Struktur/Union befinden.
-
hast du möglicherweise vergessen, den Header zu inkludieren?
-
daddy_felix schrieb:
hast du möglicherweise vergessen, den Header zu inkludieren?
Dies wird's sein. Als Ergänzung noch ein Hinweis auf C++11:
http://en.cppreference.com/w/cpp/string/basic_string/to_string
Das dürfte wohl eine der sichersten und schnelleren Möglichkeiten sein, deinen Zielstring zu erzeugen.
-
daddy_felix schrieb:
hast du möglicherweise vergessen, den Header zu inkludieren?
die hier?
#include <iostream> #include <string>die ändern nix...
-
hier findest du den richtigen Header.
-
Danke!