std::front_insert_iterator - Man Page
Turns assignment into insertion.
Synopsis
#include <iterator>
Inherits std::iterator< output_iterator_tag, void, void, void, void >.
Public Types
typedef _Container container_type
A nested typedef for the type of whatever container you used.
using difference_type
typedef output_iterator_tag iterator_category
One of the tag types.
typedef void pointer
This type represents a pointer-to-value_type.
typedef void reference
This type represents a reference-to-value_type.
typedef void value_type
The type 'pointed to' by the iterator.
Public Member Functions
constexpr front_insert_iterator (_Container &__x)
The only way to create this iterator is with a container.
constexpr front_insert_iterator & operator* ()
Simply returns *this.
constexpr front_insert_iterator & operator++ ()
Simply returns *this. (This iterator does not move.)
constexpr front_insert_iterator operator++ (int)
Simply returns *this. (This iterator does not move.)
constexpr front_insert_iterator & operator= (const typename _Container::value_type &__value)
constexpr front_insert_iterator & operator= (typename _Container::value_type &&__value)
Protected Attributes
_Container * container
Detailed Description
template<typename _Container>
class std::front_insert_iterator< _Container >"Turns assignment into insertion.
These are output iterators, constructed from a container-of-T. Assigning a T to the iterator prepends it to the container using push_front.
Tip: Using the front_inserter function to create these iterators can save typing.
Member Typedef Documentation
template<typename _Container > _Container std::front_insert_iterator< _Container >::container_type
A nested typedef for the type of whatever container you used.
output_iterator_tag std::iterator< output_iterator_tag, void, void, void, void >::iterator_category [inherited]
One of the tag types.
void std::iterator< output_iterator_tag, void, void, void, void >::pointer [inherited]
This type represents a pointer-to-value_type.
void std::iterator< output_iterator_tag, void, void, void, void >::reference [inherited]
This type represents a reference-to-value_type.
void std::iterator< output_iterator_tag, void, void, void, void >::value_type [inherited]
The type 'pointed to' by the iterator.
Constructor & Destructor Documentation
template<typename _Container > std::front_insert_iterator< _Container >::front_insert_iterator (_Container & __x) [inline], [explicit], [constexpr]
The only way to create this iterator is with a container.
Member Function Documentation
template<typename _Container > front_insert_iterator & std::front_insert_iterator< _Container >::operator* () [inline], [nodiscard], [constexpr]
Simply returns *this.
template<typename _Container > front_insert_iterator & std::front_insert_iterator< _Container >::operator++ () [inline], [constexpr]
Simply returns *this. (This iterator does not move.)
template<typename _Container > front_insert_iterator std::front_insert_iterator< _Container >::operator++ (int ) [inline], [constexpr]
Simply returns *this. (This iterator does not move.)
template<typename _Container > front_insert_iterator & std::front_insert_iterator< _Container >::operator= (const typename _Container::value_type & __value) [inline], [constexpr]
Parameters
__value An instance of whatever type container_type::const_reference is; presumably a reference-to-const T for container<T>.
- Returns
This iterator, for chained operations.
This kind of iterator doesn't really have a position in the container (you can think of the position as being permanently at the front, if you like). Assigning a value to the iterator will always prepend the value to the front of the container.
Author
Generated automatically by Doxygen for libstdc++ from the source code.