Namensräume
Varianten
Aktionen

std::insert_iterator<Container>::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)
 
 
(1)
insert_iterator<Container>&
    operator=( typename Container::const_reference value );
(bis C++11)
insert_iterator<Container>&
    operator=( const typename Container::value_type& value );
(seit C++11)
(bis C++20)
constexpr insert_iterator<Container>&
    operator=( const typename Container::value_type& value );
(seit C++20)
(2)
insert_iterator<Container>&
    operator=( typename Container::value_type&& value );
(seit C++11)
(bis C++20)
constexpr insert_iterator<Container>&
    operator( typename Container::value_type&& value );
(seit C++20)

Fügt den gegebenen Wert value in den Container ein.

1) Führt zu iter = container->insert(iter, value); ++iter;.
2) Führt zu iter = container->insert(iter, std::move(value)); ++iter;.

Inhalt

[bearbeiten] Parameter

value - Der einzufügende Wert

[bearbeiten] Rückgabewert

*this

Anmerkungen

Diese Funktion nutzt die Signaturkompatibilität zwischen dem "hinted insert" für assoziative Container (wie std::set::insert) und dem positionsbezogenen "insert" für sequentielle Container (wie std::vector::insert).

[bearbeiten] Beispiel

#include <deque>
#include <iostream>
#include <iterator>
 
int main()
{
    std::deque<int> q;
    std::insert_iterator<std::deque<int>> it(q, q.begin());
 
    for (int i = 0; i < 10; ++i)
        it = i; // inserts i
 
    for (auto& elem : q)
        std::cout << elem << ' ';
    std::cout << '\n';
}

Ausgabe

0 1 2 3 4 5 6 7 8 9