std::basic_ios<CharT,Traits>::init (3) - Linux Manuals
void init( std::basic_streambuf<CharT,Traits>* sb );
Sets the associated stream buffer to sb and initializes the internal state.
The postconditions are as follows:
tie() null pointer
rdstate() goodbit if sb is not a null pointer, otherwise badbit
flags() skipws | dec
fill() widen(' ')
getloc() a copy of the value returned by std::locale()
This member function is protected: it is called by the constructors of the derived stream classes std::basic_istream and std::basic_ostream once the associated stream buffer is known. Until this function is called, every member function (including the destructor) of the default-constructed std::basic_ios invokes undefined behavior. Note that basic_ios is a virtual base class, and therefore its constructor is not called by the constructors of those directly derived classes, which is why two-stage initialization is necessary.
sb - stream buffer to associate to
constructor (public member function)