Verständnisfrage zu Stringstreams
-
Salve,
wenn ich mit
ostringstream ostr;
einen Stringstream anlege und mit einigen << Operationen etwas hineinschiebe, dann steht das alles hinterher schön drin, wie sich das gehört.
Wenn ich aber den Stream bei der Definition mit einem Text initialisiere:ostringstream ostr("Test-Text");
dann überschreiben die << Operationen den Initialisierungstext. Warum hängen sie ihre Ausgabe nicht hinten an?
-
Hem, eigentlich müssten die angehängt werden. Welchen Compiler bzw. welche Std-Lib-Implementierung benutzt du?
-
Belli schrieb:
...
Probiers mal so:
std::ostringstream ostr("Test-Text", std::ios_base::app);
Per default wird der stringstream mit
std::ios_base::out
angelegt, und das bedeutet, der Schreibzeiger befindet sich am Anfang des Streams.
-
Bulli schrieb:
Hem, eigentlich müssten die angehängt werden. Welchen Compiler bzw. welche Std-Lib-Implementierung benutzt du?
Mingw bzw. gcc/g++ - aber Tachyon hat die Erklärung ja schon geliefert. Danke schön!