std::basic_ostream_sentry(3cxx)

std::basic_ostream_sentry3cxx

Performs setup work for output streams.

Usage

#include <ostream>

Public Member Functions

sentry (basic_ostream< _CharT, _Traits > &__os)
The constructor performs preparatory work. ~sentry ()
Possibly flushes the stream. operator bool () const
Quick status checking.

Detailed Description

template<typename _CharT, typename _Traits>

class std::basic_ostream< _CharT, _Traits >::sentry"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.

Constructor & Destructor Documentation

template<typename _CharT , typename _Traits > std::basic_ostream< _CharT, _Traits >::sentry::sentry (basic_ostream< _CharT, _Traits > & __os) [explicit]

The constructor performs preparatory work.

Parameters

__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).

References std::ios_base::failbit.

template<typename _CharT , typename _Traits > 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.

Member Function Documentation

template<typename _CharT , typename _Traits > std::basic_ostream< _CharT, _Traits >::sentry::operator bool () const [inline], [explicit]

Quick status checking.

Returns

The sentry state.

For ease of use, sentries may be converted to booleans. The return value is that of the sentry state (true == okay).

Releases

7 releases since Debian 6.0 (Squeeze); the text changed 6 times.

  1. 6.0
  2. 7
  3. 9
  4. 10
  5. 11
  6. 12
  7. 13

Author

Generated automatically by Doxygen for libstdc++ from the source code.

From libstdc++-12-doc 12.4.0-5 in Debian 13 (Trixie). Also shipped by libstdc++-13-doc, libstdc++-14-doc. Parsed by carta from the page's man source.