libstdc++
|
Performs setup work for output streams. More...
Performs setup work for output streams.
Objects of this class are created before all of the standard inserters are run. It is responsible for exception-safe prefix and suffix operations.
std::basic_ostream< _CharT, _Traits >::sentry::sentry | ( | basic_ostream< _CharT, _Traits > & | __os | ) | [explicit] |
The constructor performs preparatory work.
os | The output stream to guard. |
If the stream state is good (os.good() is true), then if the stream is tied to another output stream, is.tie()->flush()
is called to synchronize the output sequences.
If the stream state is still good, then the sentry state becomes true (okay).
Definition at line 49 of file ostream.tcc.
References std::ios_base::failbit, std::basic_ios< _CharT, _Traits >::good(), std::basic_ios< _CharT, _Traits >::setstate(), and std::basic_ios< _CharT, _Traits >::tie().
std::basic_ostream< _CharT, _Traits >::sentry::~sentry | ( | ) | [inline] |
Possibly flushes the stream.
If ios_base::unitbuf
is set in os.flags()
, and std::uncaught_exception()
is true, the sentry destructor calls flush()
on the output stream.
Definition at line 407 of file ostream.
References std::ios_base::badbit, std::uncaught_exception(), and std::ios_base::unitbuf.
std::basic_ostream< _CharT, _Traits >::sentry::operator bool | ( | ) | const [inline, explicit] |