Rogue Wave banner
Previous fileTop of documentContentsIndexNext file

insert_iterator, inserter


Insert Iterator

Summary

An insert iterator used to insert items into a collection rather than overwrite the collection.

Data Type and Member Function Indexes
(exclusive of constructors and destructors)

Synopsis

#include <iterator>
template <class Container>
class insert_iterator;

Description

Insert iterators let you insert new elements into a collection rather than copy a new element's value over the value of an existing element. The class insert_iterator is used to insert items into a specified location of a collection. The function inserter creates an instance of an insert_iterator given a particular collection type and iterator. An insert_iterator can be used with vectors, deques, lists, maps and sets.

Interface

template <class Container>
class insert_iterator : public
      iterator<output_iterator_tag,void,void,void,void> ;  {
protected:
   Container* container;
public:
   typedef Container container_type;
   insert_iterator (Container&, typename Container::iterator);
   insert_iterator<Container>&
    operator= (const typename Container::value_type&);
   insert_iterator<Container>& operator* ();
   insert_iterator<Container>& operator++ ();
   insert_iterator<Container>& operator++ (int);
};

template <class Container, class Iterator>
insert_iterator<Container> inserter (Container&, Iterator)

Types

container_type

Constructors

insert_iterator(Container& x, 
                  typename Container::iterator i);

Operators

insert_iterator<Container>&
operator=(const typename Container::value_type& value);
insert_iterator<Container>&
operator*();
insert_iterator<Container>& 
operator++();
insert_iterator<Container>& 
operator++(int);

Non-member Functions

template <class Container, class Iterator>
insert_iterator<Container> 
inserter(Container& x, Iterator i);

Example

Warnings

If your compiler does not support default template parameters, then you always need to supply the Allocator template argument. For instance, you have to write:

vector<int, allocator<int> >

instead of:

vector<int>

If your compiler does not support namespaces, then you do not need the using declaration for std.

See Also

back_insert_iterator, front_insert_iterator, Insert Iterators



Previous fileTop of documentContentsIndexNext file
©Copyright 1998, Rogue Wave Software, Inc.
Send mail to report errors or comment on the documentation.
OEM Release, June 1998