Поделиться через


Класс istreambuf_iterator

Istreambuf_iterator шаблонного класса описывает объект итератора ввода, который извлекает элементы символов из буфера потока ввода, к которому он получает доступ через хранимый им объект, относящийся к типу указателя на basic_streambuf<CharType, Признаки>.

template <  
   class CharType 
   class Traits = char_traits<CharType> 
> 
class istreambuf_iterator 
: public iterator<input_iterator_tag, CharType, typename Traits::off_type, CharType *, CharType&>

Параметры

  • CharType
    Тип, представляющий тип символа для istreambuf_iterator.

  • Traits
    Тип, представляющий тип символа для istreambuf_iterator. Этот аргумент является необязательным, и значением по умолчанию является char_traits<CharType>.

Заметки

Класс istreambuf_iterator должен удовлетворять требованиям для итератора ввода.

После создания или увеличения объекта класса istreambuf_iterator с помощью сохраненного указателя, не содержащего null, объект фактически пытается извлечь и сохранить объект типа CharType из соответствующего входного потока. Однако извлечение может быть отложено, пока не будет фактически удалена ссылка объекта или он не будет скопирован. Если извлечение завершается ошибкой, этот объект фактически заменяет сохраненный указатель указателем null, тем самым создавая индикатор конца последовательности.

Конструкторы

istreambuf_iterator

Создает объект istreambuf_iterator, инициализируемый для чтения символов из входного потока.

Определения типов

char_type

Тип, обеспечивающий тип символа для ostreambuf_iterator.

int_type

Тип, предоставляющий целочисленный тип для istreambuf_iterator.

istream_type

Тип, обеспечивающий тип потока для istream_iterator.

streambuf_type

Тип, обеспечивающий тип потока для istreambuf_iterator.

traits_type

Тип, обеспечивающий тип признаков символа для istream_iterator.

Функции-члены

equal

Тесты на равенство между двумя итераторами буфера входного потока.

Операторы

operator*

Оператор удаления ссылки возвращает следующий символ в потоке.

operator++

Либо возвращает следующий символ из входного потока, либо копирует объект перед его увеличением и возвращает копию.

operator->

Возвращает значение члена при наличии.

Требования

Заголовок: <iterator>

Пространство имен: std

См. также

Ссылки

Структура iterator

<iterator>

Потокобезопасность в стандартной библиотеке C++

Библиотека стандартных шаблонов