Partilhar via


Classe basic_stringstream

Descreve um objeto que controla a inserção e a extração de elementos e objetos codificados usando um buffer de fluxo da classe basic_stringbuf<Elem, Tr, Alloc>.

Sintaxe

template <class Elem, class Tr = char_traits<Elem>, class Alloc = allocator<Elem>>
class basic_stringstream : public basic_iostream<Elem, Tr>

Parâmetros

Alloc
A classe do alocador.

Elem
O tipo do elemento básico da cadeia de caracteres.

Tr
As características de caractere especializadas no elemento básico da cadeia de caracteres.

Comentários

O modelo de classe descreve um objeto que controla a inserção e extração de elementos e objetos codificados usando um buffer de fluxo da classe basic_stringbuf<Elem, Tr, Alloc>, com elementos do tipo Elem, cujas características de caractere são determinadas pela classe Tr e cujos elementos são alocados por um alocador da classe Alloc. O objeto armazena um objeto da classe basic_stringbuf<Elem, Tr, Alloc>.

Construtores

Construtor Descrição
basic_stringstream Constrói um objeto do tipo basic_stringstream.

Typedefs

Nome do tipo Descrição
allocator_type O tipo é um sinônimo do parâmetro de modeloAlloc.

Funções de membro

Função de membro Descrição
rdbuf Retorna o endereço do buffer de fluxo armazenado do tipo pointer para basic_stringbuf<Elem, Tr, Alloc>.
str Define ou obtém o texto em um buffer de cadeia de caracteres sem alterar a posição de gravação.

Requisitos

Cabeçalho:<sstream>

Namespace: std

basic_stringstream::allocator_type

O tipo é um sinônimo do parâmetro de modeloAlloc.

typedef Alloc allocator_type;

basic_stringstream::basic_stringstream

Constrói um objeto do tipo basic_stringstream.

explicit basic_stringstream(ios_base::openmode _Mode = ios_base::in | ios_base::out);

explicit basic_stringstream(const basic_string<Elem, Tr, Alloc>& str, ios_base::openmode _Mode = ios_base::in | ios_base::out);

Parâmetros

_Mode
Uma das enumerações em ios_base::openmode.

str
Um objeto do tipo basic_string.

Comentários

O primeiro construtor inicializa a classe base chamando basic_iostream( sb), em que sb é o objeto armazenado da classe basic_stringbuf<Elem, Tr, Alloc>. Ele também inicializa sb chamando basic_stringbuf<Elem, Tr, Alloc>( _Mode).

O segundo construtor inicializa a classe base chamando basic_iostream(sb). Ele também inicializa sb chamando basic_stringbuf<Elem, Tr, Alloc>(_ Str, _Mode).

basic_stringstream::rdbuf

Retorna o endereço do buffer de fluxo armazenado do tipo pointer para basic_stringbuf<Elem, Tr, Alloc>.

basic_stringbuf<Elem, Tr, Alloc> *rdbuf() const;

Valor de retorno

O endereço do buffer de fluxo armazenado do tipo pointer para basic_stringbuf<Elem, Tr, Alloc>.

Exemplo

Consulte basic_filebuf::close para ver um exemplo que usa rdbuf.

basic_stringstream::str

Define ou obtém o texto em um buffer de cadeia de caracteres sem alterar a posição de gravação.

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

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

Parâmetros

_Newstr
A nova cadeia de caracteres.

Valor de retorno

Retorna um objeto da classe basic_string<Elem, Tr, Alloc>, cuja sequência controlada é uma cópia da sequência controlada por *this.

Comentários

A primeira função membro retorna rdbuf ->str. A segunda função membro chama rdbuf ->str(_Newstr).

Exemplo

Confira basic_stringbuf::str para obter um exemplo que usa str.

Confira também

Acesso Thread-Safe na Biblioteca Padrão C++
Programação de iostream
Convenções de iostreams