.Net VC7.0 -fstream
-
In VC 6.0 habe ich um mit Dateien zu arbeiten #include <fstream.h> benutzt.
VC 7.0 bringt der Compiler einen Fehler. Habe versucht mit folgendem include.
#include <fstream > . Das nimmt er auch nicht. Wer weiß Rat ?Danke.
Gruß Silke.
-
#include <fstream> geht!!!
du musst nur dann beachten das alles im namespace std ist
-
Wie meinst du das ?
Muss ich auf die Datei über std zugreifen ?
-
entweder
#include <fstream> using namespace std;
oder
#include <fstream> std::fstream file; // std:: muss immer angegeben werden, außer du benutzt wie oben using namespace std;
Oder kommt bei dir wirklich ein Fehler das er die Datei fstream nicht öffnen kann?
-
Vielen Dank,
es funktioniert so !
Ich habe aber noch ein Problem.
Ich eine Member fstream m_fDatei deklariert.
Und dann übergebe ich einen anderen fstream fDateiX und möchte das dem
ersten fstream zuweisen.d.h. mfDatei = fDateiX. Da bekomme ich aber einen Fehler :
Die Funktion 'operator =' ist in 'std::basic_fstream<_Elem,_Traits>' nicht verfügbar.Wie kann ich diese Zuweisung anders machen ?
Übrigens, dieses Programm lief in VC 6.0 fehlerfrei.
Danke.
Gruß Silke.
-
Das fragst du am besten im C++ Unterforum. Hier kennt man sich damit nicht aus. Stelle am besten auch ein kleines Beispielprogramm zusammen.
-
hinweis schrieb:
Das fragst du am besten im C++ Unterforum. Hier kennt man sich damit nicht aus. Stelle am besten auch ein kleines Beispielprogramm zusammen.
Schwachsinn. Nur weil man die MFC verwendet heioßt das nicht das man nicht C++ kann.
-
Dieser Thread wurde von Moderator/in Unix-Tom aus dem Forum MFC (Visual C++) in das Forum C++ verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Unix-Tom schrieb:
hinweis schrieb:
Das fragst du am besten im C++ Unterforum. Hier kennt man sich damit nicht aus. Stelle am besten auch ein kleines Beispielprogramm zusammen.
Schwachsinn. Nur weil man die MFC verwendet heioßt das nicht das man nicht C++ kann.
Die meisten die im Visual C++/MFC Forum posten können nicht vernünftig C++.
-
fstream hat wie alle Streams keinen Copy-Konstruktor und keinen Zuweisungsoperator, weil "ein Stream-Objekt einem anderen zuordnen" mehrdeutig und gefährlich (Stichwort Buffering) ist.
-
Nimm als Member einen Pointer auf einen fstream
fstream *m_fDatei;
und weise dem Pointer dann die Adresse deines Streams zu
m_fDatei = &fDateiX
Der Copy-Konstruktor geht nicht, du muesstest dir dann schon selbst einen schreiben und da ist meine Loesung sicherlich die angenehmere.