fstream - problem

0

Mam taki fragment kodu:


```cpp
#include <fstream>
using namespace std;

class DataBase {
public:
	DataBase(const char *file): fstr(file,ios::in | ios::out | ios::binary) {}  //  tu jest problem
private:
	fstream fstr;
};

int main() {
	DataBase base("base");
}

Problem jest taki - po wykonaniu tego "programu" nie tworzy sie zaden plik, a chyba powinien? Prosze pomozcie bo ja juz nic nie wiem.</image>
0

Zapomniales o zamknieciu pliku.

0

Nie trzeba zamykac pliku poniewaz destruktor robi to za nas, a poniewaz strumien fstr jest skladowa klasy wiec jego destruktor jest wywolywany w destruktorze calej klasy wygenerowanym domyslnie przez kompilator.

Rozwiazanie problemu jest inne - nieco mnie zdziwilo - zeby utworzyc plik za pomoca strumienia fstream nalezy dodac flage ios::trunc jako parametr konstruktora. Ciekawe kto wpadl na tak "intuicyjne" rozwiazanie...

1 użytkowników online, w tym zalogowanych: 0, gości: 1