Namensräume
Varianten
Aktionen

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

Von cppreference.com
 
 
Iterator-Bibliothek
Iterator-Konzepte
Iterator-Primitive
Algorithmus-Konzepte und Hilfsprogramme
Indirekte aufrufbare Konzepte
Gemeinsame Algorithmus-Anforderungen
(C++20)
(C++20)
(C++20)
Dienstprogramme
(C++20)
Iterator-Adapter
Bereichszugriff
(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) Kopierzuweisungsoperator. Weist den Inhalt von other zu
2) Fügt value in den zugehörigen Stream ein, dann wird das Trennzeichen eingefügt, falls es bei der Konstruktion angegeben wurde.

Wenn out_stream ein Zeiger auf den zugehörigen std::basic_ostream ist und delim das Trennzeichen ist, das bei der Konstruktion dieses Objekts angegeben wurde, dann ist die Wirkung äquivalent zu

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

Inhalt

[bearbeiten] Parameter

value - das einzufügende Objekt

[bearbeiten] Rückgabewert

*this

[bearbeiten] Anmerkungen

T kann jede Klasse sein, die einen benutzerdefinierten operator<< hat.

Vor C++20 hing die Existenz des Kopierzuweisungsoperators von der veralteten impliziten Generierung ab.

[bearbeiten] Beispiel

#include <iostream>
#include <iterator>
 
int main()
{
    std::ostream_iterator<int> i1(std::cout, ", ");
    *i1++ = 1; // usual form, used by standard algorithms
    *++i1 = 2;
    i1 = 3; // neither * nor ++ are necessary
    std::ostream_iterator<double> i2(std::cout);
    i2 = 3.14;
    std::cout << '\n';
}

Ausgabe

1, 2, 3, 3.14