КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Режимы открытия файлов
Каждый класс файловых потоков содержит конструкторы, с помощью которых можно создавать объекты этих классов (потоки) различными способами. Стандартные конструкторы (без параметров) создают объект соответствующего класса, не связывая его с файлом: - ifstream(); - ofstream(); - fstream(). Конструкторы с параметрами создают объект соответствующего класса (поток), открывают файл с указанным именем и связывают этот файл с созданным потоком: - ifstream (const char *name, int mode = ios::in); - ofstream (const char *name, int mode = ios:out | ios::trunc); - fstream (const char *name, int mode = ios::in | ios::out); Первым параметром этих конструкторов с параметрами является имя файла, это – единственный обязательный параметр. Вторым формальным параметром является режим открытия файла, для которого определено значение по умолчанию. Если принимаемое по умолчанию значение не устраивает программиста, можно указать другое значение, составив его из одного или нескольких, соединенных операцией побитовое ИЛИ, следующих величин, определенных в классе ios (их значениями являются несовпадающие между собой степени числа 2, в двоичном представлении это 1, 10, 100 и т.п.):
Можно создать файловый поток с помощью стандартного конструктора без параметров, а позднее выполнить его метод open, связав поток с каким-либо файлом. Метод open имеет такие же формальные параметры, как и соответствующий конструктор с параметрами. Такой “двухступенчатый” способ создания потока, является более гибким, поскольку позволяет после закрытия файла связать данный файловый поток с другим файлом. Только после того, как поток создан и соединен с определенным файлом (либо с помощью конструктора с параметрами, либо с помощью метода open), можно выполнять ввод-вывод. После завершения ввода-вывода поток следует закрыть с помощью метода close или уничтожить (удалить), если он был создан с помощью операции new. При выводе метод close завершает вывод содержимого внутреннего буфера в файл и отсоединяет поток от файла, при вводе – отсоединяет поток от файла. То же самое происходит и при уничтожении потока как объекта.
Дата добавления: 2014-01-04; Просмотров: 529; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |