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|
|rdstate||goodbit if sb is not a null pointer, badbit otherwise|
|getloc||a copy of
Following is the declaration for ios::init function.
protected: void init (streambuf* sb);
sb − Pointer to a streambuf object.
Basic guarantee − if an exception is thrown, the stream is in a valid state.
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.