Шаг 515.
Библиотека STL. Ввод-вывод с использованием потоковых классов. Классы потоковых буферов. Пример использования итераторов потоковых буферов

    На этом шаге мы приведем пример использования итераторов потоковых буферов.

    Далее представлен классический фильтр, который просто выводит все прочитанные символы при помощи итераторов потоковых буферов. Он представляет собой видоизмененную версию примера, показанного на 481 шаге:

#include <iostream>
#include <iterator>
using namespace std;

int main()
{
    // Итератор потокового буфера ввода для cin
    istreambuf_iterator<char> inpos(cin);

    // Итератор конца потока
    istreambuf_iterator<char> endpos;

    // Итератор потокового буфера вывода для cout
    ostreambuf_iterator<char> outpos(cout);

    // Пока итератор ввода остается действительным
    while (inpos != endpos) {
        *outpos = *inpos;    // Присвоить его значение итератору вывода
        ++inpos;
        ++outpos;
    }
}

    На следующем шаге мы рассмотрим пользовательские потоковые буферы.




Предыдущий шаг Содержание Следующий шаг