Namespaces
Variants

std::ostreambuf_iterator

De es.cppreference.net
 
 
Biblioteca de iteradores
Conceptos de iterador
Primitivas de iterador
Conceptos y utilidades de algoritmos
Conceptos de invocación indirecta
Requisitos comunes de algoritmos
(C++20)
(C++20)
(C++20)
Utilidades
(C++20)
Adaptadores de iterador
Acceso a rangos
(C++11)(C++14)
(C++14)(C++14)  
(C++11)(C++14)
(C++14)(C++14)  
(C++17)(C++20)
(C++17)
(C++17)
 
 
Definido en el encabezado <iterator>
template< class CharT, class Traits = std::char_traits<CharT> >
class ostreambuf_iterator
    : public std::iterator<std::output_iterator_tag, void, void, void, void>
(hasta C++17)
template< class CharT, class Traits = std::char_traits<CharT> >
class ostreambuf_iterator;
(desde C++17)

std::ostreambuf_iterator es un LegacyOutputIterator de una sola pasada LegacyOutputIterator que escribe caracteres sucesivos en el objeto std::basic_streambuf para el cual fue construido. La operación de escritura real se realiza cuando se asigna al iterador (esté desreferenciado o no). Incrementar el std::ostreambuf_iterator es una operación nula.

En una implementación típica, los únicos miembros de datos de std::ostreambuf_iterator son un puntero al std::basic_streambuf asociado y un indicador booleano que indica si se ha alcanzado la condición de fin de archivo.

Tipos de miembros

Tipo de miembro Definición
iterator_category std:: output_iterator_tag
value_type void
difference_type

void

(hasta C++20)

std::ptrdiff_t

(desde C++20)
pointer void
reference void
char_type CharT
traits_type Traits
streambuf_type std:: basic_streambuf < CharT, Traits >
ostream_type std:: basic_ostream < CharT, Traits >

Los tipos de miembro iterator_category , value_type , difference_type , pointer y reference deben obtenerse heredando de std:: iterator < std:: output_iterator_tag , void , void , void , void > .

(hasta C++17)

Funciones miembro

construye un nuevo ostreambuf_iterator
(función miembro pública)
(destructor)
(declarado implícitamente)
destruye un ostreambuf_iterator
(función miembro pública)
escribe un carácter en la secuencia de salida asociada
(función miembro pública)
operación nula
(función miembro pública)
operación nula
(función miembro pública)
verifica si la salida falló
(función miembro pública)

Ejemplo

#include <algorithm>
#include <iostream>
#include <iterator>
#include <string>
int main()
{
    std::string s = "This is an example\n";
    std::copy(s.begin(), s.end(), std::ostreambuf_iterator<char>(std::cout));
}

Salida:

This is an example

Véase también

iterador de entrada que lee desde std::basic_streambuf
(plantilla de clase)
iterador de salida que escribe en std::basic_ostream
(plantilla de clase)