#include <stl_iterator.h>
Inheritance diagram for std::insert_iterator< _Container >:
Public Types | |
typedef _Container | container_type |
A nested typedef for the type of whatever container you used. | |
Public Member Functions | |
insert_iterator (_Container &__x, typename _Container::iterator __i) | |
insert_iterator & | operator= (const typename _Container::const_reference __value) |
insert_iterator & | operator * () |
Simply returns *this. | |
insert_iterator & | operator++ () |
Simply returns *this. (This iterator does not "move".). | |
insert_iterator & | operator++ (int) |
Simply returns *this. (This iterator does not "move".). | |
Protected Attributes | |
_Container * | container |
_Container::iterator | iter |
These are output iterators, constructed from a container-of-T. Assigning a T to the iterator inserts it in the container at the iterator's position, rather than overwriting the value at that position.
(Sequences will actually insert a copy of the value before the iterator's position.)
Tip: Using the inserter function to create these iterators can save typing.
Definition at line 536 of file stl_iterator.h.
typedef _Container std::insert_iterator< _Container >::container_type |
A nested typedef for the type of whatever container you used.
Definition at line 545 of file stl_iterator.h.
std::insert_iterator< _Container >::insert_iterator | ( | _Container & | __x, | |
typename _Container::iterator | __i | |||
) | [inline] |
The only way to create this iterator is with a container and an initial position (a normal iterator into the container).
Definition at line 551 of file stl_iterator.h.
insert_iterator& std::insert_iterator< _Container >::operator * | ( | ) | [inline] |
insert_iterator& std::insert_iterator< _Container >::operator++ | ( | int | ) | [inline] |
Simply returns *this. (This iterator does not "move".).
Definition at line 597 of file stl_iterator.h.
insert_iterator& std::insert_iterator< _Container >::operator++ | ( | ) | [inline] |
Simply returns *this. (This iterator does not "move".).
Definition at line 592 of file stl_iterator.h.
insert_iterator& std::insert_iterator< _Container >::operator= | ( | const typename _Container::const_reference | __value | ) | [inline] |
value | An instance of whatever type container_type::const_reference is; presumably a reference-to-const T for container<T>. |
The position is maintained such that subsequent assignments will insert values immediately after one another. For example,
// vector v contains A and Z insert_iterator i (v, ++v.begin()); i = 1; i = 2; i = 3; // vector v contains A, 1, 2, 3, and Z
Definition at line 578 of file stl_iterator.h.
References std::insert_iterator< _Container >::container, and std::insert_iterator< _Container >::iter.
_Container* std::insert_iterator< _Container >::container [protected] |
Definition at line 540 of file stl_iterator.h.
Referenced by std::insert_iterator< _Container >::operator=(), std::insert_iterator< __gnu_cxx::slist< _Tp, _Alloc > >::operator=(), std::insert_iterator< __gnu_cxx::hash_multiset< _Value, _HashFcn, _EqualKey, _Alloc > >::operator=(), std::insert_iterator< __gnu_cxx::hash_set< _Value, _HashFcn, _EqualKey, _Alloc > >::operator=(), std::insert_iterator< __gnu_cxx::hash_multimap< _Key, _Tp, _HashFn, _EqKey, _Alloc > >::operator=(), and std::insert_iterator< __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqKey, _Alloc > >::operator=().
_Container::iterator std::insert_iterator< _Container >::iter [protected] |
Definition at line 541 of file stl_iterator.h.
Referenced by std::insert_iterator< __gnu_cxx::slist< _Tp, _Alloc > >::insert_iterator(), std::insert_iterator< _Container >::operator=(), and std::insert_iterator< __gnu_cxx::slist< _Tp, _Alloc > >::operator=().