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


basic_streambuf::underflow

Защищенная, виртуальная функция для извлечения текущий элемент из входного потока.

virtual int_type underflow( );

Возвращаемое значение

Текущий элемент.

Заметки

Защищенная виртуальная функция-член стремится извлечь текущий элемент ch из входного потока, и выдвигать текущее положение потока, и вернуть его в качестве traits_type::to_int_type(ch). Она может этого сделать различными способами:

  • Если прочесть позиция доступна, элемент ch, хранящиеся в прочитанной позиции. Дополнительные сведения об этом см. в разделе Класс basic_streambuf комментария.

  • Открывает прочитанную положение доступным, выбрав новый или дополнительная память для буфера ввода, затем при чтении in, от какого-либо внешнего источника, один или несколько элементов. Дополнительные сведения об этом см. в разделе Класс basic_streambuf комментария.

Если функция не может быть выполнено успешно, она возвращает traits_type::eof() или создает исключение. В противном случае он возвращает текущий элемент во входном потоке, преобразованном, как описано выше. По умолчанию возвращает значение traits_type::eof().

Виртуальная функция underflow с функциями синхронизация и переполнение, определяет характеристики streambuf- производного класса. Каждый производный класс может реализовывать интерфейс underflow по-разному, но при вызове с классом потока совпадают.

Функция underflow наиболее часто называется открытыми функциями streambuf, такие как sgetc и sgetn, если область получение пуста, но другие классы, включая классы потока, могут вызывать underflow в любое время.

Предоставляет функции underflow область получение с символами из внешнего источника данных. Если область получение содержит символы, underflow возвращает первый символ. Если область получение пуста, то она заливка области получение и возвращает следующий символ (который она отображается в области получение). Если больше нет доступных символов, underflow возвращает EOF и покидает область получение пустой.

В классе strstreambuf, underflow настроить указатель egptr в хранилище доступа, динамически выделенных вызовом overflow.

Требования

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

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

См. также

Ссылки

Класс basic_streambuf

Программирование iostream

Соглашения iostreams