strstream クラス

クラス strstreambuf のストリーム バッファーを使用して、要素とエンコードされたオブジェクトの挿入と抽出を制御するオブジェクトを表します。

構文

class strstream : public iostream

解説

このオブジェクトは、クラス strstreambuf のオブジェクトを格納します。

Note

このクラスは非推奨とされます。 代わりに、stringstream または wstringstream を使用することを検討してください。

コンストラクター

コンストラクター 説明
strstream strstream 型のオブジェクトを構築します。

メンバー関数

メンバー関数 説明
freeze ストリーム バッファーの操作により、ストリーム バッファーを使用不可にします。
pcount 被制御シーケンスに書き込まれる要素の数を返します。
rdbuf ストリームの関連付けられた strstreambuf オブジェクトへのポインターを返します。
str freeze を呼び出し、被制御シーケンスの先頭へのポインターを返します。

要件

ヘッダー:<strstream>

名前空間: std

strstream::freeze

ストリーム バッファーの操作により、ストリーム バッファーを使用不可にします。

void freeze(bool _Freezeit = true);

パラメーター

_Freezeit
ストリームを停止させるかどうか示す bool

解説

メンバー関数は rdbuf ->freeze(_ Freezeit) を呼び出します。

freeze の使用例は、strstreambuf::freeze をご覧ください。

strstream::p count

被制御シーケンスに書き込まれる要素の数を返します。

streamsize pcount() const;

戻り値

被制御シーケンスに書き込まれる要素の数。

解説

このメンバー関数は、rdbuf ->pcount を返します。

pcount の使用例は、strstreambuf::pcount をご覧ください。

strstream::rdbuf

ストリームの関連付けられた strstreambuf オブジェクトへのポインターを返します。

strstreambuf *rdbuf() const

戻り値

ストリームの関連付けられた strstreambuf オブジェクトへのポインター。

解説

このメンバー関数は、型 pointer の格納されたストリーム バッファーのアドレスを strstreambuf に返します。

rdbuf の使用例は、strstreambuf::pcount をご覧ください。

strstream::str

freeze を呼び出し、被制御シーケンスの先頭へのポインターを返します。

char *str();

戻り値

被制御シーケンスの先頭へのポインター。

解説

このメンバー関数は、rdbuf ->str を返します。

str の使用例は、strstreambuf::str をご覧ください。

strstream::strstream

strstream 型のオブジェクトを構築します。

strstream();

strstream(char* ptr,
    streamsize count,
    ios_base::openmode _Mode = ios_base::in | ios_base::out);

パラメーター

count
バッファーのサイズ。

_Mode
バッファーの入出力モード。 詳細については、ios_base::openmode をご覧ください。

ptr
バッファーです。

解説

両方のコンストラクターは、streambuf( sb) を呼び出すことにより基本クラスを初期化します。ここで、sb はクラス strstreambuf の格納されているオブジェクトです。 最初のコンストラクターはまた、strstreambuf を呼び出して sb を初期化します。 2 番目のコンストラクターは、次のどちらかの方法で基本クラスを初期化します。

  • &ios_base::app== 0 の場合_Modeptr は要素の配列の最初のcount要素を指定し、コンストラクターは ( ptr, count, ptr) を呼び出すstrstreambuf必要があります。

  • それ以外の場合、ptr は count 要素の配列の最初の要素を指定する必要があります。この count 要素は C 文字列を含み、最初の要素が ptr によって指定されるものです。そしてコンストラクターは strstreambuf( ptr, count, ptr + strlen( ptr) ) を呼び出します。

関連項目

iostream
C++ 標準ライブラリ内のスレッド セーフ
iostream プログラミング
iostreams の規則