入出力マニピュレータ
From cppreference.com
マニピュレータは、operator<<またはoperator>>を使用して入出力ストリームを制御することを可能にするヘルパー関数です。
引数なしで呼び出されるマニピュレータ(例:std::cout << std::boolalpha; や std::cin >> std::hex;)は、ストリームへの参照を唯一の引数として取る関数として実装されています。basic_ostream::operator<<とbasic_istream::operator>>の特別なオーバーロードは、これらの関数へのポインタを受け取ります。これらの関数(または関数テンプレートのインスタンス化)は、標準ライブラリで唯一のアドレス取得可能な関数です。(C++20から)
引数を付けて呼び出されるマニピュレータ(例:std::cout << std::setw(10);)は、未規定の型のオブジェクトを返す関数として実装されています。これらのマニピュレータは、要求された操作を実行する独自のoperator<<またはoperator>>を定義します。
| ヘッダ
<ios>で定義 | |
| bool値のテキスト表現と数値表現を切り替える (関数) | |
| 数値の基数を示す接頭辞を使用するかどうかを制御する (関数) | |
| 浮動小数点表現に常に小数点を含めるかどうかを制御する (関数) | |
非負数に+記号を使用するかどうかを制御する(関数) | |
| 入力時に先頭の空白文字をスキップするかどうかを制御する (関数) | |
| 一部の出力フォーマットで大文字を使用するかどうかを制御する (関数) | |
| 各操作後に出力をフラッシュするかどうかを制御する (関数) | |
| 埋め文字の配置を設定する (関数) | |
| 整数I/Oで使用する基数を変更する (関数) | |
| (C++11)(C++11) |
浮動小数点I/Oで使用するフォーマットを変更する (関数) |
| ヘッダ
<istream>で定義 | |
| 空白文字を消費する (関数テンプレート) | |
| ヘッダ
<ostream>で定義 | |
| '\0'を出力する (関数テンプレート) | |
| 出力ストリームをフラッシュする (関数テンプレート) | |
| '\n'を出力し、出力ストリームをフラッシュする (関数テンプレート) | |
| (C++20) |
ストリームのbasic_syncbufがフラッシュ時に内容を出力するかを制御する (関数テンプレート) |
| (C++20) |
basic_syncbufを使用している場合、ストリームをフラッシュして内容を出力する (関数テンプレート) |
| ヘッダ
<iomanip>で定義 | |
| 指定されたios_baseフラグをクリアする (関数) | |
指定されたios_baseフラグを設定する(関数) | |
| 整数I/Oで使用する基数を変更する (関数) | |
| 埋め文字を変更する (関数テンプレート) | |
| 浮動小数点数の精度を変更する (関数) | |
| 次の入出力フィールドの幅を変更する (関数) | |
| (C++11) |
通貨の値を構文解析する (関数テンプレート) |
| (C++11) |
通貨の値をフォーマットして出力する (関数テンプレート) |
| (C++11) |
指定されたフォーマットの日付/時刻の値を構文解析する (関数テンプレート) |
| (C++11) |
指定されたフォーマットに従って日付/時刻の値をフォーマットして出力する (関数テンプレート) |
| (C++14) |
空白が埋め込まれたクォート付き文字列を挿入および抽出する (関数テンプレート) |