std::basic_ios<CharT,Traits>::init

< cpp‎ | io‎ | basic ios
protected:
void init( std::basic_streambuf<CharT,Traits>* sb );

设置关联流缓冲为 sb 并初始化内部状态。

后置条件如下:

元素
rdbuf() sb
tie() 空指针
rdstate() sb 不是空指针, 则为 goodbit ,否则为 badbit
exceptions() goodbit
flags() skipws | dec
width() 0
precision() 6
fill() widen(' ')
getloc() std::locale() 所返回的值的副本

此成员函数为受保护:一旦知晓实际缓冲区类型,则它为派生流类 std::basic_istreamstd::basic_ostream 的构造函数所调用。直至调用此函数前,默认构造的 std::basic_ios 每个成员函数(包括析构函数)都引发未定义行为。注意 basic_ios 是虚基类,从而其构造函数不为直接派生类的构造函数所调用,此乃二阶段初始化为必须的原因。

参数

sb - 要关联到的流缓冲

参阅

构造对象
(公开成员函数)