C++ IOS Library - init


It is used to initializes the values of the stream's internal flags and member variables.

Derived classes are expected to call this protected member function at some point before its first use or before its destruction (generally, during construction).

The internal state is initialized in such a way that each of these members return the following values −

member function return value
rdbuf sb
tie 0
rdstate goodbit if sb is not a null pointer, badbit otherwise
exceptions goodbit
flags skipws | dec
width 0
precision 6
fill ' ' (whitespace)
getloc a copy of locale()


Following is the declaration for ios::init function.

protected: void init (streambuf* sb);


sb − Pointer to a streambuf object.

Return Value



Basic guarantee − if an exception is thrown, the stream is in a valid state.

Data races

Modifies the stream object. The object pointed by sb may be accessed and/or modified.

Concurrent access to the same stream object or stream buffer may cause data races.