Namespaces
Variants

std::ostream_iterator<T,CharT,Traits>:: operator=

From cppreference.net
Iterator library
Iterator concepts
Iterator primitives
Algorithm concepts and utilities
Indirect callable concepts
Common algorithm requirements
(C++20)
(C++20)
(C++20)
Utilities
(C++20)
Iterator adaptors
Range access
(C++11) (C++14)
(C++14) (C++14)
(C++11) (C++14)
(C++14) (C++14)
(C++17) (C++20)
(C++17)
(C++17)
ostream_iterator & operator = ( const ostream_iterator & ) ;
(1)
ostream_iterator & operator = ( const T & value ) ;
(2)
1) Operador de asignación de copia. Asigna los contenidos de other
2) Inserta value en el flujo asociado, luego inserta el delimitador, si se especificó uno en el momento de la construcción.

Si out_stream es un puntero al std::basic_ostream asociado y delim es el delimitador especificado en la construcción de este objeto, entonces el efecto es equivalente a

* out_stream << value ;
if ( delim ! = 0 )
* out_stream << delim ;
return * this ;

Contenidos

Parámetros

value - el objeto a insertar

Valor de retorno

* this

Notas

T puede ser cualquier clase con un operator<< definido por el usuario.

Antes de C++20, la existencia del operador de asignación de copia dependía de la generación implícita obsoleta .

Ejemplo

#include <iostream>
#include <iterator>
int main()
{
    std::ostream_iterator<int> i1(std::cout, ", ");
    *i1++ = 1; // forma usual, utilizada por algoritmos estándar
    *++i1 = 2;
    i1 = 3; // ni * ni ++ son necesarios
    std::ostream_iterator<double> i2(std::cout);
    i2 = 3.14;
    std::cout << '\n';
}

Salida:

1, 2, 3, 3.14