deque::insert (STL Samples)

在 Visual C++ 演示如何使用 、向量、双端队列:: 插入 标准 (STL)模板库函数。

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
);

备注

备注

类/参数名在原型不匹配版本在头文件。修改某些提高可读性。

序列由剩余的操作数指定的每个函数插入,在元素指向由容器后的 Iter 。 第一个成员函数插入带值 x 的 一个元素并返回指向新插入的元素的迭代器。 第二个成员函数 " 插入值 " X. 的 n 元素重复 第三个成员函数插入顺序 [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;
}

Output

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 

要求

**标题:**deque

请参见

概念

标准模板库示例