Namespaces
Variants

std::basic_ospanstream<CharT,Traits>:: basic_ospanstream

From cppreference.net

explicit basic_ospanstream ( std:: span < CharT > s, std:: ios_base :: openmode mode =
std:: ios_base :: out ) ;
(1) (desde C++23)
basic_ospanstream ( basic_ospanstream && rhs ) ;
(2) (desde C++23)
basic_ospanstream ( const basic_ospanstream & ) = delete ;
(3) (desde C++23)

Construye un nuevo basic_ospanstream .

1) Utiliza el almacenamiento referenciado por s como búfer subyacente inicial del dispositivo std::basic_spanbuf encapsulado. El objeto std::basic_spanbuf encapsulado se construye como basic_spanbuf < Char, Traits > ( s, mode | std:: ios_base :: out ) .
2) Constructor de movimiento. Construye por movimiento la subobjeto base std::basic_ostream y el std::basic_spanbuf envuelto a partir de los de rhs , y luego llama a set_rdbuf con la dirección del std::basic_spanbuf envuelto en * this para instalarlo.
3) El constructor de copia está eliminado. basic_ospanstream no es copiable.

Contenidos

Parámetros

s - std::span que referencia al almacenamiento a utilizar como búfer subyacente inicial del flujo
mode - especifica el modo de apertura del flujo. Se pueden usar las siguientes constantes y operaciones OR bit a bit entre ellas:
Constante Explicación
app buscar 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 buscar al final del flujo inmediatamente después de abrir
noreplace (C++23) abrir en modo exclusivo
other - otro basic_ospanstream del cual moverse

Excepciones

Puede lanzar excepciones definidas por la implementación.

Ejemplo

#include <array>
#include <iostream>
#include <spanstream>
int main()
{
    std::array<char, 10> buffer;
    std::ospanstream os(buffer);
    os << "i=" << 1 << " j=" << 2 << '\n' << std::ends;
    std::cout << buffer.data();
}

Salida:

i=1 j=2

Véase también

construye un objeto basic_spanbuf
(función miembro pública de std::basic_spanbuf<CharT,Traits> )