std::insert_iterator<Container>::operator= (3) - Linux Man Pages

std::insert_iterator<Container>::operator=: std::insert_iterator<Container>::operator=

NAME

std::insert_iterator<Container>::operator= - std::insert_iterator<Container>::operator=

Synopsis


insert_iterator<Container>& (until C++11)
operator=( typename Container::const_reference value );
insert_iterator<Container>& (since C++11)
operator=( const typename Container::value_type& value ); (until C++20)
constexpr insert_iterator<Container>& (1) (since C++20)
operator=( const typename Container::value_type& value );
insert_iterator<Container>& (since C++11)
operator=( typename Container::value_type&& value ); (2) (until C++20)
constexpr insert_iterator<Container>& (since C++20)
operator=( typename Container::value_type&& value );


Inserts the given value value to the container.
1) Results in iter = container->insert(iter, value); ++iter;
2) Results in iter = container->insert(iter, std::move(value)); ++iter;

Parameters


value - the value to insert

Return value


*this

Notes


This function exploits the signature compatibility between hinted insert for associative containers (such as std::set::insert) and positional insert for sequential containers (such as std::vector::insert).

Example


// Run this code


  #include <iostream>
  #include <iterator>
  #include <deque>


  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 << ' ';
  }

Output:


  0 1 2 3 4 5 6 7 8 9