std::insert_iterator - cppreference.com
From cppreference.com
| Defined in header |
||
|
|
(until C++17) | |
|
|
(since C++17) | |
std::insert_iterator is a LegacyOutputIterator that inserts elements into a container for which it was constructed, at the position pointed to by the supplied iterator. The container's insert() member function is called whenever the iterator (whether dereferenced or not) is assigned to. Incrementing the std::insert_iterator is a no-op.
Member types
| Member type | Definition | ||||
iterator_category
|
std::output_iterator_tag
| ||||
value_type
|
void
| ||||
difference_type
|
| ||||
pointer
|
void
| ||||
reference
|
void
| ||||
container_type
|
Container
|
|
Member types |
(until C++17) |
Member functions
Member objects
| Member name | Definition |
container (protected member object)
|
a pointer of type Container*
|
iter (protected member object)
|
an iterator of type Container::iterator(until C++20) ranges::iterator_t<Container>(since C++20)
|
Example
#include <algorithm> #include <iostream> #include <iterator> #include <list> #include <vector> int main() { std::vector<int> v{1, 2, 3, 4, 5}; std::list<int> l{-1, -2, -3}; std::copy(v.begin(), v.end(), // may be simplified with std::inserter std::insert_iterator<std::list<int>>(l, std::next(l.begin()))); for (int n : l) std::cout << n << ' '; std::cout << '\n'; }
Output: