std::ios_base::Init
提供: cppreference.com
class Init; | ||
このクラスはデフォルトの C++ ストリーム (std::cin、 std::cout など) が適切に初期化され破棄されることを保証するために使用されます。 このクラスはそのインスタンスがいくつ作成されたかを追跡し、最初のインスタンスが作成されたときに C++ ストリームを初期化し、最後のインスタンスが破棄されたときに出力ストリームをフラッシュします。
ヘッダ <iostream>
は、静的記憶域期間を持つ std::ios_base::Init のインスタンスを (直接的にまたは間接的に) 定義するかのように動作します。 これにより順序付き初期化を伴う静的オブジェクトのコンストラクタやデストラクタで標準入出力ストリームにアクセスしても安全になります (その翻訳単位内でそれらのオブジェクトを定義する前に <iostream>
がインクルードされている限り)。
[編集]メンバ関数
コンストラクタ | *this が最初に作成されたインスタンスの場合、デフォルトの C++ ストリームを初期化します (パブリックメンバ関数) |
デストラクタ | *this が最後に破棄されたインスタンスの場合、デフォルトの C++ ストリームをフラッシュします (パブリックメンバ関数) |
[編集]関連項目
標準 C 入力ストリーム stdin から読み込みます (グローバルオブジェクト) | |
標準 C 出力ストリーム stdout に書き込みます (グローバルオブジェクト) | |
標準 C エラーストリーム stderr に書き込みます。 バッファリングされません (グローバルオブジェクト) | |
標準 C エラーストリーム stderr に書き込みます (グローバルオブジェクト) |