Scroll to navigation

std::ios_base::Init(3) C++ Standard Libary std::ios_base::Init(3)

NAME

std::ios_base::Init - std::ios_base::Init

Synopsis


class Init;


This class is used to ensure that the default C++ streams (std::cin, std::cout,
etc.) are properly initialized and destructed. The class tracks how many instances
of it are created and initializes the C++ streams when the first instance is
constructed as well as flushes the output streams when the last instance is
destructed.


The header <iostream> behaves as if it defines (directly or indirectly) an instance
of std::ios_base::Init with static storage duration: this makes it safe to access
the standard I/O streams in the constructors and destructors of static objects with
ordered initialization (as long as #include <iostream> is included in the
translation unit before these objects were defined)

Member functions


if *this is the first instance created, initializes the default C++
constructor streams
(public member function)
if *this is the last instance destroyed, flushes the default C++
destructor streams
(public member function)

See also


cin reads from the standard C input stream stdin
wcin (global object)
cout writes to the standard C output stream stdout
wcout (global object)
cerr writes to the standard C error stream stderr, unbuffered
wcerr (global object)
clog writes to the standard C error stream stderr
wclog (global object)

2022.07.31 http://cppreference.com