Standard library header <iostream>
From cppreference.net
このヘッダは Input/output ライブラリの一部です。
<iostream>
をインクルードすることは、静的記憶域期間を持つ
std::ios_base::Init
型のオブジェクトを定義するかのように振る舞います。そのコンストラクタは、これが構築される最初の
std::ios_base::Init
オブジェクトである場合に標準ストリームオブジェクトを初期化し、そのデストラクタは、これが破棄される最後の
std::ios_base::Init
オブジェクトである場合に(
cin
と
wcin
を除く)それらのオブジェクトをフラッシュします。
インクルード |
||
|
(C++11)
|
std::ios_base クラス、 std::basic_ios クラステンプレートとtypedef | |
|
(C++11)
|
std::basic_streambuf クラステンプレート | |
|
(C++11)
|
std::basic_istream クラステンプレートとtypedef | |
|
(C++11)
|
std::basic_ostream 、 std::basic_iostream クラステンプレートとtypedef | |
オブジェクト |
||
|
標準C入力ストリーム
stdin
から読み込む
(グローバルオブジェクト) |
||
|
標準C出力ストリーム
stdout
に書き込む
(グローバルオブジェクト) |
||
|
標準Cエラーストリーム
stderr
に書き込む(バッファリングなし)
(グローバルオブジェクト) |
||
|
標準Cエラーストリーム
stderr
に書き込む
(グローバルオブジェクト) |
||
概要
#include <ios> #include <streambuf> #include <istream> #include <ostream> namespace std { extern istream cin; extern ostream cout; extern ostream cerr; extern ostream clog; extern wistream wcin; extern wostream wcout; extern wostream wcerr; extern wostream wclog; }
不具合報告
以下の動作変更の欠陥報告書は、以前に公開されたC++規格に対して遡及的に適用されました。
| DR | 適用対象 | 公開時の動作 | 正しい動作 |
|---|---|---|---|
| LWG 155 | C++98 |
静的オブジェクトの型は
std::basic_ios::Init
(厳密には誤りではないが、表現が誤解を招くものだった) |
std::ios_base::Init
に修正
|
| LWG 1123 | C++98 |
<iostream>
のインクルードは
std::ios_base::Init オブジェクトの構築を保証しなかった |
保証する |