ВУЗ:
Составители:
Рубрика:
165
ввода-вывода
Классы буферов для потоков
Streambuf Абстрактный базовый класс буфера потока
filebuf Класс буфера потока для дисковых файлов
s trs treambuf Класс буфера потока для строк
stdiobuf Класс буфера потока для стандартных файлов
ввода-вывода
Назначение почти всех классов следует из их названия. Классы
группы _withassign являются производными соответствующих потоко-
вых классов без этого окончания. Они перегружают операцию присваи-
вания, что позволяет изменять указатель на используемый классом бу-
фер.
Потоки ввода-вывода C++ предоставляют некоторые преимуще-
ства по сравнению с функциями ввода-вывода библиотеки С.
Безопасность типов. Сравним вызов функций библиотеки С и
использование стандартных потоков С++. Вызов функции printf() вы-
глядит следующим образом:
#include <stdio.h>
. . .
int n = 12;
char name[] = ”Вывод строки на экран\n”;
printf(”%d %s”, i, name);
Этот вызов приведет к следующей правильной печати:
12 Вывод строки на экран
Но если по невнимательности поменять местами аргументы для
printf(), ошибка обнаружится только во время исполнения программы.
Может произойти все что угодно – от странного вывода до краха систе-
мы. Этого не может случиться в случае использования стандартных по-
токов:
#include <iostream.h>
cout << i <<‘ ‘ << name << ‘\n’;
Страницы
- « первая
- ‹ предыдущая
- …
- 161
- 162
- 163
- 164
- 165
- …
- следующая ›
- последняя »