ios
The base class ios provides methods to test and manage the state
of input or output streams.
ios delegates the job of actually reading and writing bytes to
the abstract class streambuf, which is designed to provide
buffered streams (compatible with C, in the GNU implementation).
See section Using the streambuf Layer, for information on
the facilities available at the streambuf level.
Constructor: ios::ios ([streambuf* sb [, ostream* tie])
The ios constructor by default initializes a new ios, and
if you supply a streambuf sb to associate with it, sets the
state good in the new ios object. It also sets the
default properties of the new object.
You can also supply an optional second argument tie to the
constructor: if present, it is an initial value for ios::tie, to
associate the new ios object with another stream.
The ios destructor is virtual, permitting application-specific
behavior when a stream is closed--typically, the destructor frees any
storage associated with the stream and releases any other associated
objects.