Scroll to navigation

std::insert_iterator::operator=(3) C++ Standard Libary std::insert_iterator::operator=(3)

NAME

std::insert_iterator::operator= - std::insert_iterator::operator=

Synopsis


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

Output:


0 1 2 3 4 5 6 7 8 9

2024.06.10 http://cppreference.com