次の方法で共有


basic_streambuf Class

抽象基本クラスは派生ストリーム バッファーは、要素と、ストリームの特定表現の間の転送を制御することについて説明します。

template<class Elem, class Tr = char_traits<Elem> >
   class basic_streambuf;

パラメーター

解説

テンプレート クラスは、抽象基本クラスは派生ストリーム バッファーは、要素と、ストリームの特定表現の間の転送を制御することを表します。クラスのオブジェクトをbasic_streambuf支援型の要素を持つストリームを制御するTr、別名 char_type、持つ文字の特徴クラスによって決まります char_traitsとも呼ばれます traits_type

すべてストリーム バッファーは概念的には 2 つの独立したストリーム制御: 抽出 (入力) するときに、もう 1 つの挿入 (出力)。特定の表現は、ただし、これらのストリームのいずれか、または複数がアクセスできないように可能性があります。通常、2 つのストリームのいくつかの関係を維持します。出力ストリームに挿入すると、 basic_stringbuf<Elem、 Tr> どのような展開後は、入力ストリームからオブジェクトをなどです。1 つのストリームを配置するときは、 basic_filebuf<Elem、 Tr> オブジェクト、タンデムでのストリームの位置します。

テンプレート クラスのパブリック インターフェイスbasic_streambufただし、特化されたすべてのストリーム バッファーへの一般的な操作を提供します。保護されているインターフェイスは、その作業を行うために必要なストリームの特定の表示操作を提供します。保護された仮想メンバー関数、派生ストリーム バッファーは、ストリームの特定表現の動作を調整することができます。どのように、保護された仮想メンバー関数の動作を専門としていますこのライブラリ内の各派生ストリーム バッファーをについて説明します。ここでは何もしないが、基本クラスの既定の動作を説明します。

残りのメンバー関数のコントロールしてバッファーの送信を提供する任意のストレージ ストリームからからコピーを保護します。入力バッファーなどの特徴です。

  • ebackは、バッファーの先頭へのポインター。

  • gptrを参照するには、次の要素へのポインター。

  • egptrは、バッファーの末尾を越えてだけのポインター。

同様に、出力バッファーによって特徴付けられます。

  • pbaseは、バッファーの先頭へのポインター。

  • pptrを作成するには、次の要素へのポインター。

  • epptrは、バッファーの末尾を越えてだけのポインター。

任意のバッファーには、次のプロトコルが使用されます。

  • 次へのポインターが null の場合、バッファーは存在しません。それ以外の場合は、すべての 3 つのポインターは同じシーケンスにポイントします。ためには安全に比較できます。

  • 出力バッファーには、次のポインター、終了ポインターより小さい場合は、次のポインターによって指定された書き込み位置に要素を格納できます。

  • 次へのポインター、終了ポインターより小さい場合の入力バッファー、読み取り、次のポインターによって指定された位置に要素を読み取ることができます。

  • 次へのポインターより低い先頭ポインターを比較する場合の入力バッファーを戻る要素減少の次のポインターによって指定された putback 位置に配置できます。

いずれかの保護された仮想メンバー関数を記述するクラスから派生のbasic_streambuf<Elem、 Tr> このプロトコルを維持するのには、協調動作する必要があります。

An object of class basic_streambuf<Elem, Tr> 前に説明した六つのポインターを格納します。型のオブジェクトでは、ロケール オブジェクトを格納ロケールの潜在的な使用は派生ストリーム バッファー。

9h24a8cd.collapse_all(ja-jp,VS.110).gifコンストラクター

basic_streambuf

オブジェクトの型を構築するbasic_streambuf

9h24a8cd.collapse_all(ja-jp,VS.110).gifTypedef

char_type

型名とを関連付けます、 Elemテンプレート パラメーター。

int_type

内の型名を関連付けますbasic_streambufでスコープ、 Elemテンプレート パラメーター。

off_type

内の型名を関連付けますbasic_streambufでスコープ、 Elemテンプレート パラメーター。

pos_type

内の型名を関連付けますbasic_streambufでスコープ、 Elemテンプレート パラメーター。

traits_type

型名とを関連付けます、 Trテンプレート パラメーター。

9h24a8cd.collapse_all(ja-jp,VS.110).gifメンバー関数

eback

入力バッファーの先頭にポインターを返す保護されている関数です。

egptr

入力バッファーの終端を越えてだけのポインターを返す保護されている関数です。

epptr

出力バッファーの終端を越えてだけのポインターを返す保護されている関数です。

gbump

追加する保護された関数_Count入力バッファーの次のポインターへのポインター。

getloc

取得、 basic_streambufオブジェクトのロケール。

gptr

入力バッファーの次の要素へのポインターを返しますが保護されている関数です。

imbue

A 保護されている、仮想関数を呼び出すことによって pubimbue

in_avail

バッファーから読み取ることができる要素の数を返します。

オーバーフロー

バッファーがいっぱいに、新しい文字を挿入したときに呼び出すことができますは、保護された仮想関数です。

pbackfail

戻るを入力ストリームに要素を配置すると、保護された仮想メンバー関数、ください、(次へのポインターが指す) 現在の要素。

pbase

出力バッファーの先頭へのポインターを返しますが保護されている関数です。

pbump

追加する保護された関数count 、出力バッファーの次のポインターへのポインター。

pptr

出力バッファーの次の要素へのポインターを返しますが保護されている関数です。

pubimbue

セット、 basic_streambufオブジェクトのロケール。

pubseekoff

コール seekoffは、派生クラスでオーバーライドする仮想関数を保護します。

pubseekpos

コール seekpos、派生クラスでオーバーライドされ、現在のポインター位置がリセットされます、仮想関数を保護します。

pubsetbuf

コール setbufは、派生クラスでオーバーライドする仮想関数を保護します。

pubsync

コール同期、派生クラスでオーバーライドされ、このバッファーに関連付けられた外部ストリームを更新する仮想関数を保護します。

sbumpc

読み取り、ストリームのポインターを移動、現在の要素を返します。

seekoff

保護された仮想メンバー関数は、制御されたストリームの現在位置を変更しようとします。

seekpos

保護された仮想メンバー関数は、制御されたストリームの現在位置を変更しようとします。

setbuf

各派生ストリーム バッファーには、操作固有の保護された仮想メンバー関数を実行します。

setg

格納する保護された関数_Gbeg 、先頭ポインターで_Gnext次のポインターでと_Gend入力バッファーを終了ポインターに。

「setp」と

保存は、保護された関数_Pbeg先頭ポインターと_Pend終了ポインターを出力バッファーにします。

sgetc

ストリーム内の位置を変更することがなく、現在の要素を返します。

sgetn

要素の読み取り数を返します。

showmanyc

保護された仮想メンバー関数は入力ストリームから抽出され、プログラムが無期限の待機にできないことを確認する文字数のカウントを返します。

snextc

現在の要素を読み込み、次の要素を返します。

sputbackc

配置は、 char_typeストリーム。

sputc

ストリームに文字を配置します。

sputn

ストリームに文字列を配置します。

stossc

過去のストリーム内の現在の要素に移動します。

sungetc

ストリームから文字を取得します。

スワップ

このオブジェクトの値で指定された値が交換basic_streambufパラメーター オブジェクトします。

同期

関連付けられた外部ストリームと、制御されたストリームを同期しようとしています。 保護された仮想関数です。

uflow

入力ストリームから現在の要素を抽出する保護された仮想関数です。

アンダー フロー

入力ストリームから現在の要素を抽出する保護された仮想関数です。

xsgetn

入力ストリームから要素を抽出する保護された仮想関数です。

xsputn

要素を出力ストリームに挿入する保護された仮想関数です。

9h24a8cd.collapse_all(ja-jp,VS.110).gif演算子

operator=

このオブジェクトの値を割り当てますbasic_streambufオブジェクト。

必要条件

ヘッダー: <streambuf>

名前空間: std

参照

関連項目

C++ の標準ライブラリのスレッド セーフ

入出力ストリームのプログラミング

入出力ストリームの規則

その他の技術情報

basic_streambuf のメンバー

<streambuf> メンバー