std::basic_iostream<CharT,Traits>:: basic_iostream
From cppreference.net
<
cpp
|
io
|
basic iostream
|
explicit
basic_iostream
(
std::
basic_streambuf
<
CharT,Traits
>
*
sb
)
;
|
(1) | |
|
basic_iostream
(
const
basic_iostream
&
other
)
=
delete
;
|
(2) | (desde C++11) |
|
protected
:
basic_iostream ( basic_iostream && other ) ; |
(3) | (desde C++11) |
Construye un nuevo objeto de flujo.
1)
Se inicializa con streambuf
sb
. Las clases base se inicializan como
basic_istream
<
CharT,Traits
>
(
sb
)
y
basic_ostream
<
CharT,Traits
>
(
sb
)
. Después de la llamada
rdbuf
(
)
==
sb
y
gcount
(
)
==
0
.
2)
No se permite la construcción por copia.
3)
Constructor de movimiento: construye por movimiento la primera clase base
basic_istream
como
basic_istream
<
CharT,Traits
>
(
std
::
move
(
rhs
)
)
;
, que a su vez construye por movimiento e inicializa la base virtual
std::basic_ios
. La inicialización de la otra base,
basic_ostream
, está definida por la implementación (por ejemplo, puede agregarse un constructor protegido por defecto a
std::basic_ostream
, que no hace nada) porque la construcción por movimiento no puede usar
rhs
dos veces. Este constructor de movimiento es protegido: es llamado por los constructores de movimiento de las clases de flujo derivadas
std::basic_fstream
y
std::basic_stringstream
antes de que construyan por movimiento y asocien el búfer de flujo.
Parámetros
| sb | - | streambuf para inicializar con |
| other | - | otro stream para inicializar con |
Véase también
|
(C++11)
|
asigna por movimiento otro
basic_iostream
(función miembro protegida) |