std::strstreambuf::freeze
提供: cppreference.com
< cpp | io | strstreambuf
void freeze( bool freezefl = true ); |
||
バッファが動的確保を使用する場合、ストリームの凍結状態を freezefl
に設定します。
ストリームが凍結されている間、 overflow() はバッファを再確保せず、 destructor はバッファを解放しません (そのためメモリリークを発生させます)。
目次 |
[編集] 引数
freezefl | - | 設定する凍結状態の新しい値 |
[編集] 戻り値
(なし)
[編集] ノート
str() のすべての呼び出しは返されたポインタの有効性を維持するためにストリームを凍結させます。 デストラクタがバッファを解放できるようにするためには、 freeze(false) が明示的に呼ばれる必要があります。
[編集] 例
この例では、ベースとなる配列の初期確保は16バイトです。
Run this code
#include <strstream> #include <iostream> int main() { { std::strstream dyn; // dynamically-allocated read/write buffer dyn << "Test: " << 1.23; // note: no std::ends to demonstrate append behavior