入出力ライブラリ
提供: cppreference.com
< cpp
C++ には2つの入出力ライブラリが含まれています。 現代的なストリームベースの入出力ライブラリと、 C スタイルの入出力関数の標準のセットです。
ストリームベースの入出力
ストリームベースの入出力ライブラリは抽象化された入出力デバイスを中心に体系化されます。 これらの抽象デバイスにより、ファイル、メモリストリーム、あるいはオンザフライで任意の演算 (例えば圧縮) を行うカスタムアダプタデバイスなどに対して、同じコードで入出力を処理できます。
ほとんどのクラスがテンプレート化されており、任意の基本文字型に適合できます。 最も一般的な基本文字型 (char および wchar_t) に対して typedef が提供されます。 これらのクラスは以下の階層に体系化されます。
継承図
抽象 | |
ヘッダ
<ios> で定義 | |
| フォーマットフラグと入出力例外を管理します (クラス) | |
| 任意のストリームバッファを管理します (クラステンプレート) | |
ヘッダ
<streambuf> で定義 | |
| 生のデバイスを抽象化します (クラステンプレート) | |
ヘッダ
<ostream> で定義 | |
| 与えられた抽象デバイス (std::basic_streambuf) をラップし、高水準の出力インタフェースを提供します (クラステンプレート) | |
ヘッダ
<istream> で定義 | |
| 与えられた抽象デバイス (std::basic_streambuf) をラップし、高水準の入力インタフェースを提供します (クラステンプレート) | |
| 与えられた抽象デバイス (std::basic_streambuf) をラップし、高水準の入出力インタフェースを提供します (クラステンプレート) | |
ファイル入出力実装 | |
ヘッダ
<fstream> で定義 | |
| 生のファイルデバイスを実装します (クラステンプレート) | |
| 高水準のファイルストリーム入力操作を実装します (クラステンプレート) | |
| 高水準のファイルストリーム出力操作を実装します (クラステンプレート) | |
| 高水準のファイルストリーム入出力操作を実装します (クラステンプレート) | |
文字列入出力実装 | |
ヘッダ
<sstream> で定義 | |
| 生の文字列デバイスを実装します (クラステンプレート) | |
| 高水準の文字列ストリーム入力操作を実装します (クラステンプレート) | |
| 高水準の文字列ストリーム出力操作を実装します (クラステンプレート) | |
| 高水準の文字列ストリーム入出力操作を実装します (クラステンプレート) | |
配列入出力実装 | |
ヘッダ
<strstream> で定義 | |