Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа6.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
169.98 Кб
Скачать

Функции класса filebuf

Таблица Функции класса filebuf

Функция

Назначение

open

Открывает файл для чтения/записи, связывая с ним объект класса filebuf

close

Закрывает файл

setmode

Задает режим доступа к файлу: двоичный (константа filebuf::binary) или текстовый (константа filebuf::text)

attach

Связывает указанный открытый файл с объектом класса filebuf

fd

Возвращает дескриптор класса

is_open

Проверяет, открыт ли файл, связанный с потоком

Функции класса streambuf

Семейство функций-элементов streambuf используется классами, основанными на ios. Любой класс, порожденный от ios, наследует указатель на объект класса streambuf. Объекты класса streambuf управляют фиксированной областью памяти, называемой также областью резервирования, которая в свою очередь может быть разделена на область ввода и вывода ( они могут перекрывать друг друга).

Класс streambuf является абстрактным, т.е. создать его объект напрямую нельзя (его конструктор является защищенным и не может быть вызван из программы). Можно создавать собственные классы, порожденные от streambuf, переопределяя его виртуальные функции и настраивая его работу в соответствии с потребностями конкретного приложения. Только из производных классов можно вызвать многочисленные защищенные функции этого класса, управляющие областью резервирования.

Таблица Открытые функции класса streambuf

Функция

Назначение

in_avail

Возвращает число символов в области ввода

sgetc

Возвращает символ, на который ссылается указатель области ввода; при этом указатель не перемещается

snextc

Перемещает указатель области ввода на одну позицию вперед, после чего возвращает текущий символ

sbumpc

Возвращает текущий символ и затем перемещает указатель области ввода на одну позицию вперед

stossc

Перемещает указатель области ввода на одну позицию вперед, но не возвращает символ

sputbackc

Перемещает указатель области ввода на одну позицию назад, возвращая символ в буфер

sgetn

Читает требуемое количество символов из буфера

out_waiting

Возвращает число символов в области вывода

sputc

Записывает символ в буфер и перемещает указатель области вывода на одну позицию вперед

sputn

Записывает требуемое количество символов в буфер и перемещает указатель области вывода на соответствующее число позиций вперед

dbp

В текстовом виде записывает в стандартный выходной поток различного рода информацию о состоянии буфера

Таблица Виртуальные функции класса streambuf

Функция

Назначение

base

Возвращает указатель на начало области резервирования

ebuf

Возвращает указатель на конец области резервирования

blen

Возвращает размер области резервирования

pbase

Возвращает указатель на начало области вывода

pptr

Возвращает значение указателя области вывода

epptr

Возвращает указатель на конец области ввода

eback

Возвращает указатель на начало области ввода

gptr

Возвращает значение указателя области ввода

egptr

Возвращает указатель на конец области вывода

setp

Задает значения указателей, связанных с областью вывода

setg

Задает значения указателей, связанных с областью ввода

pbump

Перемещает указатель области вывода на указанное число байтов относительно текущей позиции

gbump

Перемещает указатель области ввода на указанное число байтов относительно текущей позиции

setb

Задает значения указателей, связанных с областью резервирования

unbuffered

Задает или возвращает значение переменной, определяющей состояние буфера

allocate

Вызывает виртуальную функцию doallocate для создания области резервирования

doallocate

Выделяет память для области резервирования ( виртуальная функция)

Таблица Виртуальные функции класса streambuf

Функция

Назначение

sync

Очищает области ввода и вывода

setbuf

Добавляет к буферу указанную зарезервированную область памяти

seekoff

Перемещает указатель области ввода или вывода на указанное количество байтов

seekpos

Перемещает указатель области ввода или вывода на указанную позицию относительно начала потока

overflow

Очищает область вывода

underflow

Если область ввода пуста, заполняет ее данными из источника

pbackfail

Вызывается функцией sputbackc() в случае неудачной попытки вернуться назад на один символ