# front_insert_iterator Class Template Reference

Inheritance diagram for front_insert_iterator:

List of all members.

## Detailed Description

### template<typename _Container>
class std::front_insert_iterator< _Container >

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 411 of file stl_iterator.h.

## Public Types

- typedef _Container container_type
- typedef void difference_type
- typedef output_iterator_tag iterator_category
- typedef void pointer
- typedef void reference
- typedef void value_type

## Public Member Functions

- front_insert_iterator (_Container &__x)
- front_insert_iterator & operator * ()
- front_insert_iterator operator++ (int)
- front_insert_iterator & operator++ ()
- front_insert_iterator & operator= (typename _Container::const_reference __value)

## Protected Attributes

- _Container * container

## Member Typedef Documentation

typedef _Container container_type

| A nested typedef for the type of whatever container you used. Definition at line 419 of file stl_iterator.h.

typedef void difference_type `[inherited]`

| Distance between iterators is represented as this type. Definition at line 113 of file stl_iterator_base_types.h.

typedef output_iterator_tag iterator_category `[inherited]`

| One of the tag types. Definition at line 109 of file stl_iterator_base_types.h.

typedef void pointer `[inherited]`

| This type represents a pointer-to-value_type. Definition at line 115 of file stl_iterator_base_types.h.

typedef void reference `[inherited]`

| This type represents a reference-to-value_type. Definition at line 117 of file stl_iterator_base_types.h.

typedef void value_type `[inherited]`

| The type "pointed to" by the iterator. Definition at line 111 of file stl_iterator_base_types.h.

## Constructor & Destructor Documentation

front_insert_iterator | ( | _Container & | __x | ) | `[inline, explicit]`

| The only way to create this iterator is with a container. Definition at line 422 of file stl_iterator.h.

## Member Function Documentation

front_insert_iterator& operator * | ( |  | ) | `[inline]`

| Simply returns *this. Definition at line 444 of file stl_iterator.h.

front_insert_iterator operator++ | ( | int |  | ) | `[inline]`

| Simply returns *this. (This iterator does not "move".). Definition at line 454 of file stl_iterator.h.

front_insert_iterator& operator++ | ( |  | ) | `[inline]`

| Simply returns *this. (This iterator does not "move".). Definition at line 449 of file stl_iterator.h.

front_insert_iterator& operator= | ( | typename _Container::const_reference | __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 436 of file stl_iterator.h.

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

- stl_iterator.h