:FileClass.срр {0} // Реализац
Автор admin
Вторник, 12 мая 2009 11:32
:FileClass.срр {0} // Реализация FileClass #include “FileClass.h” #incl ude #incl ude using namespace std: FileClass::FileClass(const char* fname. const char* mode) { if((f = fopen(fname. mode)) — 0) throw FileClassErrorC’Error opening file”): } FileClass::-FileClass() { fclose(f); } FILE* FileClass::fp() { return f: } ///:- Конструктор вызывает функцию fopen(), как при обычном открытии файла, но он также проверяет, что результат отличен от нуля (признак ошибки открытия файла). Если попытка открытия файла завершилась неудачей, класс запускает исключение. Деструктор закрывает файл, а функция fp() возвращает закрытую переменную f. Ниже приводится простой пример использования класса FileClass: //: C04:FileClassTest.cpp ll{l) FileClass #include #include finclude “FileClass.h” using namespace std; int mainO { try { Fi1eClass f(“Fi1eClassTest.cpp”): const int BSIZE – 100: char buf[BSIZE]; while(fgets(buf. BSIZE. f.fpO)) fputs(buf. stdout); } catch(FileClass::FileClassError& e) { Зачем нужны потоки? 129 cout « е.what О « endl; return EXITJAILURE: } return EXITJUCCESS;
Комментарии закрыты.
Последние комментарии