cplusplus
.com
教程
参考
文章
论坛
C++
教程
参考
文章
论坛
参考
C 库
<cassert> (assert.h)
<cctype> (ctype.h)
<cerrno> (errno.h)
C++11
<cfenv> (fenv.h)
<cfloat> (float.h)
C++11
<cinttypes> (inttypes.h)
<ciso646> (iso646.h)
<climits> (limits.h)
<clocale> (locale.h)
<cmath> (math.h)
<csetjmp> (setjmp.h)
<csignal> (signal.h)
<cstdarg> (stdarg.h)
C++11
<cstdbool> (stdbool.h)
<cstddef> (stddef.h)
C++11
<cstdint> (stdint.h)
<cstdio> (stdio.h)
<cstdlib> (stdlib.h)
<cstring> (string.h)
C++11
<ctgmath> (tgmath.h)
<ctime> (time.h)
C++11
<cuchar> (uchar.h)
<cwchar> (wchar.h)
<cwctype> (wctype.h)
容器
C++11
<array>
<deque>
C++11
<forward_list>
<list>
<map>
<queue>
<set>
<stack>
C++11
<unordered_map>
C++11
<unordered_set>
<vector>
输入/输出
<fstream>
<iomanip>
<ios>
<iosfwd>
<iostream>
<istream>
<ostream>
<sstream>
<streambuf>
多线程
C++11
<atomic>
C++11
<condition_variable>
C++11
<future>
C++11
<mutex>
C++11
<thread>
其他
<algorithm>
<bitset>
C++11
<chrono>
C++11
<codecvt>
<complex>
<exception>
<functional>
C++11
<initializer_list>
<iterator>
<limits>
<locale>
<memory>
<new>
<numeric>
C++11
<random>
C++11
<ratio>
C++11
<regex>
<stdexcept>
<string>
C++11
<system_error>
C++11
<tuple>
C++11
<type_traits>
C++11
<typeindex>
<typeinfo>
<utility>
<valarray>
<fstream>
类模板
basic_filebuf
basic_fstream
basic_ifstream
basic_ofstream
类
filebuf
fstream
ifstream
、ofstream
wfilebuf
wfstream
wifstream
、wofstream
filebuf
filebuf::~filebuf
filebuf::filebuf
公有成员
filebuf::close
filebuf::is_open
filebuf::open
C++11
filebuf::operator=
C++11
filebuf::swap
受保护的虚成员
filebuf::imbue
filebuf::overflow
filebuf::pbackfail
filebuf::seekoff
filebuf::seekpos
filebuf::setbuf
filebuf::showmanyc
filebuf::sync
filebuf::uflow
filebuf::underflow
非成员重载
C++11
swap (filebuf)
参考
<fstream>
filebuf
uflow
受保护的虚成员函数
<fstream>
std::
filebuf
::uflow
int uflow();
在溢出时获取字符并推进位置
返回输入流当前位置的字符,并推进输入位置指针。
在此之前,此函数会尝试从关联文件中读取字符,并在(如果对象维护着一个
中间缓冲区
)通过修改
内部输入缓冲区
指针(
gptr
、
egptr
和
eback
)使它们可用。
如果没有更多可用字符,并且该函数未能从关联文件中读取更多字符,则返回
文件结束
值(
EOF
),表示失败。
此虚成员函数覆盖了继承的成员
streambuf::uflow
,当
获取指针
(
gptr
)处没有可用读取位置时,由
sbumpc
等成员调用以请求新字符。
此成员函数的行为类似于
underflow
,只是此函数会推进输入位置。
参数
无
返回值
受控输入序列
当前位置的字符,类型为
int
。
如果
受控输入序列
中没有更多字符可读,则返回
文件结束
值(
EOF
)。
数据竞争
修改
filebuf
对象。
同时访问同一个
文件流缓冲区
对象可能导致数据争用。
异常安全
基本保证:
如果抛出异常,*文件流缓冲区*处于有效状态。
另见
filebuf::underflow
在下溢时获取字符
(保护虚成员函数)
streambuf::uflow
在下溢时获取字符并前进位置
(保护虚成员函数)
streambuf::sbumpc
获取当前字符并前进到下一个位置
(公有成员函数)