Zeiger auf ofstream
-
Hallo,
kann mir jemand sagen warum mit dem gcc das Schreiben in einen durch einen Zeiger referenzierten ofstream nichts tut? Folgender Code lässt sich kompilieren, macht aber ausser die Datei anzulegen nichts.
ofstream* out = new ofstream( "test.log", std::ios::app ); (*out) << "test";
Besten Dank
Marcel
-
Irgendwie muss es wohl mit der Instanziierung zusammenhängen, denn so funktioniert es:
ofstream out( "test.log", std::ios::app ); ofstream* p_out = &p_out (*p_out) << "test";
-
Du musst die Ausgabe flushen.
*out << flush; // oder endl;
Im deinem zweiten Code macht das der Destruktor.
-
Tatsächlich. Vielen Dank.
-
delete out;
würde reichen