basic_stringbuf::str
設定或取得字串緩衝區的文字,而不需要變更寫入位置。
basic_string<Elem, Tr, Alloc> str( ) const;
void str(
const basic_string<Elem, Tr, Alloc>& _Newstr
);
參數
- _Newstr
新的字串。
傳回值
傳回類別 basic_string<Elem, Tr,控制序列是的複本順序的控制項。 *thisAlloc**>,** 物件。
備註
第 10% 成員函式會傳回類別 basic_string<Elem, Tr, Alloc物件>,控制序列是的複本順序的控制項。 *this。複製的順序取決於所儲存的 stringbuf 模式:
如果 mode & ios_base::out 為非零值 (Nonzero),輸出緩衝區存在,這個序列是整個輸出緩衝區 (epptr -從 pbase的pbase 項目)。
如果 mode & ios_base::in 為非零值 (Nonzero),並輸入緩衝區存在,這個序列是整個輸入緩衝區 (egptr -從 eback的eback 項目)。
否則,這個複製的序列是空的。
第二 + 成成員函式解除配置 *this目前控制項的任何序列。接著這個配置的複本順序的控制項。 _Newstr。如果 mode & ios_base::in 為非零值 (Nonzero),則將輸入緩衝區開始讀取這個序列開頭。如果 mode & ios_base::out 為非零值 (Nonzero),則將輸出緩衝區開始寫入此序列開頭。
範例
// basic_stringbuf_str.cpp
// compile with: /EHsc
#include <iostream>
#include <sstream>
using namespace std;
int main( )
{
basic_string<char> i( "test" );
stringstream ss;
ss.rdbuf( )->str( i );
cout << ss.str( ) << endl;
ss << "z";
cout << ss.str( ) << endl;
ss.rdbuf( )->str( "be" );
cout << ss.str( ) << endl;
}
需求
標題: <sstream>
命名空間: std