std::basic_ios<CharT,Traits>:: rdbuf
From cppreference.net
|
std::
basic_streambuf
<
CharT, Traits
>
*
rdbuf
(
)
const
;
|
(1) | |
|
std::
basic_streambuf
<
CharT, Traits
>
*
rdbuf
(
std::
basic_streambuf
<
CharT, Traits
>
*
sb
)
;
|
(2) | |
Gestiona el búfer de flujo asociado.
1)
Devuelve el búfer de flujo asociado. Si no hay ningún búfer de flujo asociado, devuelve un puntero nulo.
2)
Establece el búfer de flujo asociado a
sb
. El estado de error se borra llamando a
clear()
. Devuelve el búfer de flujo asociado antes de la operación. Si no hay ningún búfer de flujo asociado, devuelve un puntero nulo.
Contenidos |
Parámetros
| sb | - | Búfer de flujo a asociar. |
Valor de retorno
El búfer de flujo asociado, o un puntero nulo si no había ningún búfer de flujo asociado.
Excepciones
Puede lanzar excepciones definidas por la implementación.
Ejemplo
Ejecutar este código
#include <iostream> #include <sstream> int main() { std::ostringstream local; auto cout_buff = std::cout.rdbuf(); // guardar puntero al buffer de std::cout std::cout.rdbuf(local.rdbuf()); // sustituir buffer interno de std::cout con // buffer del objeto 'local' // ahora std::cout trabaja con el buffer de 'local' // no ves este mensaje std::cout << "some message"; // volver al buffer anterior std::cout.rdbuf(cout_buff); // verás este mensaje std::cout << "back to default buffer\n"; // imprimir contenido de 'local' std::cout << "local content: " << local.str() << "\n"; }
Salida:
back to default buffer local content: some message
Véase también
reemplaza el
rdbuf
sin borrar su estado de error
(función miembro protegida) |