Compartir a través de


basic_stringstream (Clase)

Describe un objeto que controla la inserción y la extracción de elementos y objetos codificados usando un búfer de flujo de clase basic_stringbuf<Elem, Tr, Alloc>.

Sintaxis

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

Parámetros

Alloc
Clase de asignador.

Elem
Tipo de elemento básico de la cadena.

Tr
Rasgos de caracteres especializados en el elemento básico de la cadena.

Comentarios

La plantilla de clases describe un objeto que controla la inserción y extracción de elementos y objetos codificados mediante el uso de un búfer de flujo de clase basic_stringbuf<Elem, Tr, Alloc>, con elementos de tipo Elem, cuyos rasgos de caracteres están determinados por la clase Tr y cuyos elementos están asignados mediante un asignador de clase Alloc. El objeto almacena un objeto de clase basic_stringbuf<Elem, Tr, Alloc>.

Constructores

Constructor Descripción
basic_stringstream Construye un objeto de tipo basic_stringstream.

Typedefs

Nombre de tipo Descripción
allocator_type El tipo es un sinónimo del parámetro de plantilla Alloc.

Funciones miembro

Función de miembro Descripción
rdbuf Devuelve la dirección del búfer de flujo almacenado de tipo pointer a basic_stringbuf<Elem, Tr, Alloc>.
str Establece u obtiene el texto en un búfer de cadena sin cambiar la posición de escritura.

Requisitos

Encabezado:<sstream>

Espacio de nombres: std

basic_stringstream::allocator_type

El tipo es un sinónimo del parámetro de plantilla Alloc.

typedef Alloc allocator_type;

basic_stringstream::basic_stringstream

Construye un objeto de 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
Una de las enumeraciones de ios_base::openmode.

str
Objeto de tipo basic_string.

Comentarios

El primer constructor inicializa la clase base al llamar a basic_iostream( sb), donde sb es el objeto almacenado de clase basic_stringbuf<Elem, Tr, Alloc>. También inicializa sb al llamar a basic_stringbuf<Elem, Tr, Alloc>( _Mode).

El segundo constructor inicializa la clase base al llamar a basic_iostream( sb). También inicializa sb al llamar a basic_stringbuf<Elem, Tr, Alloc>(_ Str, _Mode).

basic_stringstream::rdbuf

Devuelve la dirección del búfer de flujo almacenado de tipo pointer a basic_stringbuf<Elem, Tr, Alloc>.

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

Valor devuelto

La dirección del búfer de secuencia almacenado de tipo pointer a basic_stringbuf<Elem, Tr, Alloc>.

Ejemplo

Vea basic_filebuf::close para obtener un ejemplo que usa rdbuf.

basic_stringstream::str

Establece u obtiene el texto en un búfer de cadena sin cambiar la posición de escritura.

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

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

Parámetros

_Newstr
La nueva cadena.

Valor devuelto

Devuelve un objeto de clase basic_string<Elem, Tr, Alloc>, cuya secuencia controlada es una copia de la secuencia que *this controla.

Comentarios

La primera función miembro devuelve rdbuf ->str. La segunda función miembro llama a rdbuf ->str( _Newstr).

Ejemplo

Vea basic_stringbuf::str para obtener un ejemplo en el que se usa str.

Consulte también

Seguridad para subprocesos en la biblioteca estándar de C++
Programación con iostream
Convenciones de iostreams