Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All
abs
Expand Minimize
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here.

deque::insert (STL Samples) 

Illustrates how to use the deque::insert Standard Template Library (STL) function in Visual C++.


iterator insert(
   iterator Iter,
   const T& x = T( )
);
void insert(
   iterator Iter,
   size_type n,
   const T& x
);
void insert(
   iterator Iter,
   const_iterator First,
   const_iterator Last
);

NoteNote

The class/parameter names in the prototype do not match the version in the header file. Some have been modified to improve readability.

Each function inserts a sequence specified by the remaining operands after the element pointed to by Iter in the container. The first member function inserts a single element with value x and returns an iterator that points to the newly inserted element. The second member function inserts a repetition of n elements of value x. The third member function inserts the sequence [First, Last).

// insert.cpp
// compile with: /EHsc

#include <iostream>
#include <deque>

using namespace std;


typedef deque<char >  CHARDEQUE;
void print_contents (CHARDEQUE  deque);

int main()
{
    //create a with 3 A's
    CHARDEQUE  a(3,'A');

    //create b with 2 B's.
    CHARDEQUE  b(2,'B');

    //print out the contents
    print_contents (a);
    print_contents (b);

    //insert 'X' to the beginning of a
    a.insert(a.begin(),'X');
    print_contents (a);

    //insert 'Y' to the end of a
    a.insert(a.end(),'Y');
    print_contents (a);

    //inset 3 'Z's to one item before the end of a
    a.insert(a.end()-1,3,'Z');
    print_contents (a);

    //insert to the end of a from b
    a.insert(a.end(),b.begin(),b.end());
    print_contents (a);

}

//function to print the contents of deque
void print_contents (CHARDEQUE  deque)
{
    CHARDEQUE::iterator pdeque;

    cout <<"The output is: ";

    for(pdeque = deque.begin();
        pdeque != deque.end();
        pdeque++)
    {
        cout << *pdeque <<" " ;
    }
        cout<<endl;
}

The output is: A A A 
The output is: B B 
The output is: X A A A 
The output is: X A A A Y 
The output is: X A A A Z Z Z Y 
The output is: X A A A Z Z Z Y B B 

Header: <deque>

Community Additions

ADD
Show:
© 2015 Microsoft