受保护的虚函数
<streambuf> <iostream>

std::basic_streambuf::underflow

int_type underflow();
在下溢时获取字符
其他成员函数调用的虚函数,用于在不改变当前位置的情况下获取受控输入序列中的当前字符。

它被公共成员函数(如sgetc)调用,以便在读取指针gptr)没有可用读取位置时请求新字符。

它在 basic_streambuf 中的默认行为是始终返回 traits_type::eof()(表示失败),但派生类可以覆盖此行为,以修改 gptregptr 内部指针,使更多字符可供缓冲区访问(如果可用)。basic_filebufbasic_stringbuf 都会覆盖此虚成员函数。

参数



返回值

成功时,使用成员 traits_type::to_int_type 将被 put back 的字符转换为 int_type 类型的值。
如果失败,该函数返回*文件结束符*值(traits_type::eof())。

数据竞争

修改*流缓冲区*对象。
同时访问同一*流缓冲区*对象可能会导致数据竞争。

异常安全

基本保证:如果抛出异常,*流缓冲区*处于有效状态。

另见