共用方式為


basic_stringbuf::str

設定或取得字串緩衝區的文字,而不需要變更寫入位置。

basic_string<Elem, Tr, Alloc> str( ) const;
void str(
    const basic_string<Elem, Tr, Alloc>& _Newstr
);

參數

  • _Newstr
    新的字串。

傳回值

傳回類別 basic_string<ElemTr,控制序列是複製順序由 *this的 Alloc**>,** 物件。

備註

第 10% 成員函式傳回 basic_string<ElemTrAlloc>類別物件,控制序列是複製順序由 *this。 複製順序取決於儲存 stringbuf 方式:

  • 如果 mode & ios_base::out 為非零和輸出緩衝區存在,序列是整個輸出緩衝區 (epptr - 從 pbasepbase 項目)。

  • 如果 mode & ios_base::in 為非零值和輸入緩衝區存在,序列是整個輸入緩衝區 (egptr - 從 ebackeback 項目)。

  • 否則,複製的序列是空的。

第二 + 成成員函式解除配置 *this目前控制項的任何序列。 然後配置的複本順序由 _Newstr。 如果 mode & ios_base::in 為非零,則將輸入緩衝區中開始讀取序列開頭。 如果 mode & ios_base::out 為非零,則將輸出緩衝區開始寫入在序列開頭。

範例

// 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

請參閱

參考

basic_stringbuf 類別

iostream 程式設計

iostreams 慣例