Cześć
Na wstępie - pisałam w C++ kilka dobrych lat temu, wtedy ostatecznie skorzystałam z funkcji dostępu do plików żywcem wziętych z C. Obecnie chcę pisać czysto w C++... 'botak'.
Problem: nie wiem jak korzystać z plików: Dawno temu jak się uczyłam pisać to nauczyłam sie korzystać z try catch i łapania wyjątków, tak jak tu:
bool fileexists(string nazwapliku) {
ifstream plik;
try {
plik.open(nazwapliku, ios::in);
if(plik.good()) {
plik.close();
return(true);
} else { return(false);}
} catch (exception& e) {
cout << e.what() << endl;
return(false);
}
}
Ale na necie znalazłam coś takiego:
if(plik.good()) {rób swoje}
else
{rób coś innego}
To drugie rozwiązanie nie pozwala na wyłapanie nic?
Kolejna sprawa - zrobiłam się ciekawska i muszę wiedzieć CO robi każde polecenie. A wiec zapisuję sobie coś do pliku:
pwyj.write((char*)&znak,1);
I czytam:
pwej.read((char*)&znak,1);
Dlaczego definiując wskaźnik korzystam z typu i po co to robić? Co tu porabia "(char*)
" właściwie? Na co mi adres &znak
? (dobrze rozumiem, żę to wskazuje adres zmiennej do/z której ma być pobrana wartość? 1 jak rozumiem to wielkość przesyłanej zmiennej, ok.
vpiotr