Sun Studio 12: C++ ユーザーズガイド

14.12 iostream の用語

iostream ライブラリの説明では、一般のプログラミングに関する用語と同じでも意味が異なる語を多く使用します。次の表では、それらの用語が iostream ライブラリの説明で使用される場合の意味を定義します。

表 14–4 iostream の用語

iostream 用語

定義 

バッファー

バッファーには、2 つの意味があります。 1 つは iostream パッケージに固有のバッファーで、もう 1 つは入出力一般に適用されるバッファーです。

iostream ライブラリに固有のバッファーは、 streambuf クラスで定義されたオブジェクトです。

一般にいうバッファーは、入出力データを効率よく転送するために使用するメモリーブロックを指します。バッファリングされた入出力の場合は、バッファーがいっぱいになるか、バッファーが強制的にフラッシュされるときまで、データの転送は行われません。 

「バッファリングなしのバッファー」とは、前述で定義したように一般にいうバッファーがない streambuf を指します。この章では streambuf を指すバッファーという語を使用しないようにしていますが、マニュアルページやほかの C++ のマニュアルでは、streambuf の意味でバッファーという語を使用しています。

抽出

iostream から入力データを取り出す操作を抽出といいます。

Fstream

ファイル用に特殊化された入出力ストリームです。特に courier のようにクーリエフォントで印刷されている場合は、iostream クラスから派生した fstream クラスを指します。

挿入

iostream に出力データを送り込む操作を挿入といいます。

iostream

一般には、入力ストリームまたは出力ストリームです。 

iostream ライブラリ

ファイル iostream.hfstream.hstrstream.hiomanip.h、ライブラリ stdiostream.h をインクルードすることにより使用できるライブラリです。iostream はオブジェクト指向のライブラリであるため、ユーザーが必要に応じて拡張できます。そのため、iostream ライブラリを使用して実行できるすべての機能があらかじめ定義されているわけではありません。

ストリーム

一般に、iostreamfstreamstrstream、またはユーザー定義のストリームをいいます。

Streambuf

文字シーケンスの入ったバッファーで、put ポインタまたは get ポインタ、あるいはその両方を持ちます。courier のようにクーリエフォントで印刷されている場合は、streambuf という特定のクラスを意味します。そのほかのフォントで印刷されている場合は一般に streambuf クラスのオブジェクト、または streambuf の派生クラスを意味します。ストリームオブジェクトは必ず、streambuf から派生した型のオブジェクト (またはそのオブジェクトへのポインタ) を持っています。

Strstream

文字型配列処理用に特殊化した iostream です。courier のようにクーリエフォントで印刷されている場合は、strstream という特定のクラスを意味します。