basic_streambuf炒锅的功能溢出和下溢如何
How the functions overflow and underflow of basic_streambuf wok
我正在阅读C++ 11标准。第 27.6.3.4.3/7 节和 27.6.3.4.5/3 节描述了函数 "int_type underflow();" 和 "int_type overflow(int_type c = traits::eof());"。没有例子可以解释它们是如何工作的。有人可以通过示例帮助解释函数吗?
基本思想非常简单。 underflow
用于输入流。当输入缓冲区中没有剩余数据时,调用underflow
从实际源(例如,文件或套接字)读取数据,以至少部分重新填充缓冲区。
overflow
几乎相反 - 当缓冲区已满时,overflow
被调用将数据写出到关联的文件或套接字,或者其他什么。它还被调用以在销毁输出流之前刷新缓冲区。
相关文章:
- 自定义 std::fstream,std::filebuf 的溢出和下溢函数未为每个字符调用
- 带有剪裁下溢的夏亚减法
- 使用 size_t 初始化循环变量时的整数下溢
- 无锁队列实现中的虚假下溢C++
- 在减法期间将 C++ 转换为字节 (unit8_t) 不会像我预期的那样强制下溢;输出int16_t;为什么?
- C++长 int 溢出/下溢
- 上溢/下溢是执行时未定义的行为吗
- C++ 在将字符串提取到标量时处理溢出/下溢
- C/FORTRAN将双下溢设置为零
- basic_streambuf炒锅的功能溢出和下溢如何
- 为什么C++下溢/溢出行为被视为未定义
- C++下溢和溢出
- 渐变下溢程序的表示
- 指针下溢或溢出时会发生什么情况
- 溢流/下溢问题
- 如何在C语言中检测浮点下溢
- 如何检测双精度浮点溢出和下溢
- 未签名的下溢机制
- 编译器构造-如何在C++中发生堆栈下溢
- 在对基本类型进行数学运算时检查溢出/下溢