Problem mit Ifstream / Ofstream
-
Ich probiere mit den beiden oben genannten Funktionen 2Dateien("Datei1";"Datei2") in einer void Funktion(void Öffnen) auszulesen bzw zu beschreiben:
void Öffnen()
{
ifstream Input ("Datei1.dat",ios::binary);
Input.close;
ifstream Input ("Datei2.dat",ios::binary);
Input.close;
}(nicht Orginaler Quelltext)
Jedoch spuckt der Compiler nur diese Fehlermeldung aus:
"[...]error C2374: 'Input': Neudefinition; Mehrfachinitialisierung"
Wie kann ich dies umgehen?
-
Programmierst du schon lange C++?

Du kannst im selben Block keinen Bezeichner mehrfach definieren. Such dir für den zweiten
std::fstreameinen anderen Variablennamen aus.P.S.: Bitte C/C++-Tags benutzen, also [cpp] und [/cpp].
-
danke
Funktioniert!
-
Nexus schrieb:
Programmierst du schon lange C++?

Du kannst im selben Block keinen Bezeichner mehrfach definieren. Such dir für den zweiten
std::fstreameinen anderen Variablennamen aus....Alternativ kann er auch 2 Blöcke aufmachen:
void Öffnen() { { ifstream Input ("Datei1.dat",ios::binary); Input.close; } { ifstream Input ("Datei2.dat",ios::binary); Input.close; } }hilft manchmal, den Code übersichtlicher zu halten (wenn man die Variablen nur recht lokal braucht.
-
Wobei man das close natürlich weglassen kann.
-
Braunstein schrieb:
Wobei man das close natürlich weglassen kann.
Gegenüber Anfängern sollte man vorsichtig sein mit solchen Bemerkungen.

Besser man schreibt das
close(), dadurch verliert man nichts. So denkt man auch in dem Fall daran, wo man eine Datei vor Blockende schliessen will.