std::basic_streambuf<CharT,Traits>::uflow

来自cppreference.com
< cpp‎ | io‎ | basic streambuf
 
 
 
 
protected:
virtual int_type uflow();

通过更新指向输入区的指针(若需要),确保输入区中至少一个字符可用。成功时返回字符的值,并令获取指针的值前进一个字符。失败时返回 traits::eof()

函数可以更新 gptregptreback 指针,以定义新加载的数据位置(若存在)。失败时,函数确保 gptr() == nullptrgptr() == egptr

函数的基类版本调用 underflow() 并自增 gptr()

参数

(无)

返回值

成功时为获取指针前进一之前所指向的字符的值,否则为 traits::eof()

函数的基类版本返回 underflow() 所返回的值。

注解

std::streambuf 的公开函数仅若 gptr() == nullptrgptr() >= egptr() 时才调用此函数。

要求不使用获取区且不设置 basic_streambuf 中获取区指针的定制 streambuf 类覆写此函数。

示例

参阅

从关联输入序列读取字符到获取区
(虚受保护成员函数)
从放置区写入字符到关联的输出序列
(虚受保护成员函数)