[ Web Proxy ]
URL:
Viewing: http://es.cppreference.com/cpp/io/basic_stringstream/basic_stringstream [Back]  [Original]

std::basic_stringstream::basic_stringstream - cppreference.com
cppreference.com
Espacios de nombres
Variantes

std::basic_stringstream::basic_stringstream

De cppreference.com
 
 
Biblioteca de E/S
Manipuladores de E/S
E/S estilo C
Bferes
(en desuso en C++98)
Flujos
Abstracciones
E/S de archivos
E/S de cadenas
E/S de arrays
(en desuso en C++98)
(en desuso en C++98)
(en desuso en C++98)
Salida sincronizada
Tipos
Interfaz de categora de error
(C++11)
 
 
explicit basic_stringstream( std::ios_base::openmode mode = {{#pad:|27}} std::ios_base::in | std::ios_base::out );
(1) (hasta C++11)
explicit basic_stringstream( std::ios_base::openmode mode );
(desde C++11)
basic_stringstream()
    : basic_stringstream(std::ios_base::in | std::ios_base::out) {}
(2) (desde C++11)
explicit basic_stringstream
    ( const std::basic_string<CharT, Traits, Allocator>& str,
      std::ios_base::openmode mode =
          std::ios_base::in | std::ios_base::out );
(3)
explicit basic_stringstream
    ( std::basic_string<CharT, Traits, Allocator>&& str,
      std::ios_base::openmode mode =
          std::ios_base::in | std::ios_base::out );
(4) (desde C++20)
basic_stringstream( std::ios_base::openmode mode, const Allocator& a );
(5) (desde C++20)
template< class SAlloc >
basic_stringstream( const std::basic_string<CharT, Traits, SAlloc>& str,
{{#pad:|18}}  std::ios_base::openmode mode, const Allocator& a );
(6) (desde C++20)
template< class SAlloc >
basic_stringstream( const std::basic_string<CharT, Traits, SAlloc>& str,
{{#pad:|18}}  const Allocator& a )
    : basic_stringstream(str, std::ios_base::in | std::ios_base::out, a) {}
(7) (desde C++20)
template< class SAlloc >
explicit basic_stringstream
    ( const std::basic_string<CharT, Traits, SAlloc>& str,
      std::ios_base::openmode mode =
          std::ios_base::in | std::ios_base::out );
(8) (desde C++20)
template< class StringViewLike > explicit basic_stringstream ( const StringViewLike& t, std::ios_base::openmode mode = std::ios_base::in | std::ios_base::out );
(9) (desde C++26)
template< class StringViewLike >
basic_stringstream( const StringViewLike& t,
{{#pad:|18}}  std::ios_base::openmode mode, const Allocator& a );
(10) (desde C++26)
template< class StringViewLike >
basic_stringstream( const StringViewLike& t, const Allocator& a );
(11) (desde C++26)
basic_stringstream( basic_stringstream&& other );
(12) (desde C++11)

Construye un nuevo flujo de cadena.

Dados

  • base_type como std::basic_iostream<CharT, Traits>, y
  • buf_type como std::basic_stringbuf<CharT, Traits, Allocator>,

el std::basic_iostream base y el dato miembro solo para exposicin sb se inicializan de la siguiente manera.

Sobrecarga  std::basic_iostream base sb
(1) base_type(std::addressof(sb))[1] buf_type(mode)
(2) buf_type(std::ios_base::in | std::ios_base::out)
(3) buf_type(str, mode)
(4) buf_type(std::move(str), mode)
(5) buf_type(mode, a)
(6) buf_type(str, mode, a)
(7) buf_type(str, std::ios_base::in | std::ios_base::out, a)
(8) buf_type(str, mode)
(9) std::addressof(sb) {t, mode, Allocator()}
(10) {t, mode, a}
(11) {t, std::ios_base::in | std::ios_base::out, a}
(12) Construido por movimiento del std::basic_iostream base de other Construido por movimiento de other.sb
  1. El std::basic_iostream base se inicializ con base_type(&sb) (para las sobrecargas (1,3)) hasta C++11.
8) Esta sobrecarga solo participa en la resolucin de sobrecargas si std::is_same_v<SAlloc, Allocator> es false.
9-11) Estas sobrecargas solo participan en la resolucin de sobrecargas si std::is_convertible_v<const StringViewLike&, std::basic_string_view<CharT, Traits>> es true.

Parameters

str - Cadena a usar como el contenido inicial del flujo de cadena.
t - Un objeto (convertible a std::basic_string_view) para usar como el contenido inicial del flujo de cadena.
a - Asignador de memoria usado para asignar el contenido del flujo de cadena.
mode - Especifica el modo de apertura del flujo. Es un tipo TipoMscaraDeBits, se definen las siguientes constantes:
Constante Explicacin
app Busca hasta al final del flujo antes de cada escritura.
binary Abrir en modo binario.
in Abrir para lectura.
out Abrir para escritura.
trunc Descartar el contenido del flujo al abrir.
ate Busca hasta al final del flujo inmediatamente despus de abrirlo.
noreplace (C++23) Abrir en modo exclusivo.
other - Otro flujo de cadena a usar como fuente.

Notas

La construccin de objetos basic_stringstream nicos en un bucle cerrado, como cuando se utiliza para la conversin de cadenas, puede ser significativamente ms costosa que llamar a str() para reutilizar el mismo objeto.

Macro de prueba de caracterstica
__cpp_lib_sstream_from_string_view 202306L (C++26) Flujos de cadena interactuando con vistas sobre cadena, (9-11)

Ejemplo

#include <iostream>
#include <sstream>

int main()
{
    // constructor por defecto (flujo de entrada/salida)
    std::stringstream buf1;
    buf1 << 7;
    int n = 0;
    buf1 >> n;
    std::cout << "buf1 = " << buf1.str() << " n = " << n << '\n';
    
    // flujo de entrada
    std::istringstream inbuf("-10");
    inbuf >> n;
    std::cout << "n = " << n << '\n';
    
    // flujo de salida en modo anexar (C++11)
    std::ostringstream buf2("prueba", std::ios_base::ate);
    buf2 << '1';
    std::cout << buf2.str() << '\n';
}

Salida:

buf1 = 7 n = 7
n = -10
prueba1

Informes de defectos

Los siguientes informes de defectos de cambio de comportamiento se aplicaron de manera retroactiva a los estndares de C++ publicados anteriormente.

ID Aplicado a Comportamiento segn lo publicado Comportamiento correcto
P0935R0 C++11 El constructor por defecto era explicit. Se hizo implcito.

Vase tambin

obtiene o establece el contenido del objeto subyacente dispositivo cadena
Original:
gets or sets the contents of underlying string device object
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(funcin miembro pblica) [editar]
Construye un objeto basic_stringbuf.
(funcin miembro pblica de std::basic_stringbuf) [editar]

Web Proxy Viewer  |  New URL  |  Original Page