basic_stringbuf::str
Ustawia lub zwraca tekst bez zmiany położenia zapisu buforu ciągów.
basic_string<Elem, Tr, Alloc> str( ) const;
void str(
const basic_string<Elem, Tr, Alloc>& _Newstr
);
Parametry
- _Newstr
Nowy ciąg znaków.
Wartość zwracana
Zwraca obiekt klasy basic_string<Elem, Tr, Alloc**>,** których kontrolowany sekwencji jest kopia sekwencji kontrolowane przez * to.
Uwagi
Pierwsza funkcja Członkowskich zwraca obiekt klasy basic_string <Elem, Tr, Alloc>, których sekwencji kontrolowany jest kopią sekwencji kontrolowane przez * to.Sekwencja skopiowane zależy od trybu stringbuf przechowywane:
Jeśli Tryb & ios_base::out jest różna od zera i istnieje bufor wyjściowy, sekwencja jest bufor wyjściowy całego (epptr - pbase elementów, począwszy od pbase).
Jeśli Tryb & ios_base::in jest różna od zera i wprowadzania bufor istnieje, sekwencja jest cały bufor wejściowy (egptr - eback elementów, począwszy od eback).
W przeciwnym razie skopiowane sekwencji jest pusty.
Druga funkcja Członkowskie zwalnia dowolną sekwencję obecnie kontrolowane przez * to.Następnie przydziela kopię sekwencji kontrolowane przez _Newstr.Jeśli Tryb & ios_base::in jest niezerowa, ustawia bufor wejściowy rozpocząć odczyt na początku sekwencji.Jeśli Tryb & ios_base::out jest niezerowa, ustawia bufor wyjściowy, aby rozpocząć pisanie na początku sekwencji.
Przykład
// 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;
}
Wymagania
Nagłówek: <sstream>
Obszar nazw: std