std::basic_ios<CharT,Traits>:: rdbuf
From cppreference.net
|
std::
basic_streambuf
<
CharT, Traits
>
*
rdbuf
(
)
const
;
|
(1) | |
|
std::
basic_streambuf
<
CharT, Traits
>
*
rdbuf
(
std::
basic_streambuf
<
CharT, Traits
>
*
sb
)
;
|
(2) | |
関連付けられたストリームバッファを管理します。
1)
関連付けられたストリームバッファを返す。関連付けられたストリームバッファがない場合は、ヌルポインタを返す。
2)
関連するストリームバッファを
sb
に設定します。エラー状態は
clear()
を呼び出すことでクリアされます。操作前の関連するストリームバッファを返します。関連するストリームバッファが存在しない場合は、ヌルポインタを返します。
目次 |
パラメータ
| sb | - | 関連付けるストリームバッファ。 |
戻り値
関連付けられたストリームバッファ、または関連付けられたストリームバッファが存在しなかった場合はnullポインタ。
例外
実装定義の例外をスローする可能性があります。
例
このコードを実行
#include <iostream> #include <sstream> int main() { std::ostringstream local; auto cout_buff = std::cout.rdbuf(); // std::coutバッファへのポインタを保存 std::cout.rdbuf(local.rdbuf()); // std::coutの内部バッファを // 'local'オブジェクトのバッファで置換 // これ以降std::coutは'local'バッファで動作 // このメッセージは表示されない std::cout << "some message"; // 元のバッファに戻す std::cout.rdbuf(cout_buff); // このメッセージは表示される std::cout << "back to default buffer\n"; // 'local'の内容を出力 std::cout << "local content: " << local.str() << "\n"; }
出力:
back to default buffer local content: some message
関連項目
エラー状態をクリアせずに
rdbuf
を置き換える
(protected member function) |