Public Types | Public Member Functions | Protected Attributes

std::front_insert_iterator< _Container > Class Template Reference
[Iterators]

Turns assignment into insertion. More...

Inheritance diagram for std::front_insert_iterator< _Container >:
Inheritance graph
[legend]

List of all members.

Public Types

Public Member Functions

Protected Attributes


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.

Definition at line 487 of file stl_iterator.h.


Member Typedef Documentation

template<typename _Container >
typedef _Container std::front_insert_iterator< _Container >::container_type

A nested typedef for the type of whatever container you used.

Definition at line 495 of file stl_iterator.h.

typedef void std::iterator< output_iterator_tag , void , void , void , void >::difference_type [inherited]

Distance between iterators is represented as this type.

Definition at line 126 of file stl_iterator_base_types.h.

typedef output_iterator_tag std::iterator< output_iterator_tag , void , void , void , void >::iterator_category [inherited]

One of the tag types.

Definition at line 122 of file stl_iterator_base_types.h.

typedef void std::iterator< output_iterator_tag , void , void , void , void >::pointer [inherited]

This type represents a pointer-to-value_type.

Definition at line 128 of file stl_iterator_base_types.h.

typedef void std::iterator< output_iterator_tag , void , void , void , void >::reference [inherited]

This type represents a reference-to-value_type.

Definition at line 130 of file stl_iterator_base_types.h.

typedef void std::iterator< output_iterator_tag , void , void , void , void >::value_type [inherited]

The type "pointed to" by the iterator.

Definition at line 124 of file stl_iterator_base_types.h.


Constructor & Destructor Documentation

template<typename _Container >
std::front_insert_iterator< _Container >::front_insert_iterator ( _Container &  __x  )  [inline, explicit]

The only way to create this iterator is with a container.

Definition at line 498 of file stl_iterator.h.


Member Function Documentation

template<typename _Container >
front_insert_iterator& std::front_insert_iterator< _Container >::operator* (  )  [inline]

Simply returns *this.

Definition at line 536 of file stl_iterator.h.

template<typename _Container >
front_insert_iterator std::front_insert_iterator< _Container >::operator++ ( int   )  [inline]

Simply returns *this. (This iterator does not move.).

Definition at line 546 of file stl_iterator.h.

template<typename _Container >
front_insert_iterator& std::front_insert_iterator< _Container >::operator++ (  )  [inline]

Simply returns *this. (This iterator does not move.).

Definition at line 541 of file stl_iterator.h.

template<typename _Container >
front_insert_iterator& std::front_insert_iterator< _Container >::operator= ( const typename _Container::value_type &  __value  )  [inline]
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.

Definition at line 520 of file stl_iterator.h.


The documentation for this class was generated from the following file: