STL中vector及其相关操作函数

insert()函数

insert() 函数有以下三种用法:

  • iterator insert( iterator loc, const TYPE &val );  在指定位置loc前插入值为val的元素,返回指向这个元素的迭代器
  • void insert( iterator loc, size_type num, const TYPE &val );  在指定位置loc前插入num个值为val的元素
  • void insert( iterator loc, input_iterator start, input_iterator end ); 在指定位置loc前插入区间[start, end)的所有元素 

举例:

#include<vector>
#include<iostream>
using namespace std;
int main()
{
    vector<int> v(4);
    v[0]=2;
    v[1]=7;
    v[2]=9;
    v[3]=5;//此时v为2 7 9 5
    
    v.insert(v.begin(),8);//在最前面插入新元素,此时v为8 2 7 9 5
    v.insert(v.begin()+3,1);//在迭代器中下标为3的元素前插入新元素,此时v为8 2 7 1 9 5
    v.insert(v.end(),3);//在向量末尾追加新元素,此时v为8 2 7 1 9 5 3
    v.insert(v.end(),3,0);//在尾部插入3个0,此时v为8 2 7 1 9 5 3 0 0 0
    
    int a[] = {1,2,3,4};
    v.insert(v.end(),a[2],a[1]);//在尾部插入a[2]个a[1],此时v为8 2 7 1 9 5 3 0 0 0 2 2 2
    
    vector<int>::iterator it;
    for(it=v.begin(); it!=v.end();it++)
    {
        cout<<*it<<" ";
    }
    cout<<endl;
    
    return 0;
}

 输出为 8 2 7 1 9 5 3 0 0 0 2 2 2 ;

猜你喜欢

转载自blog.csdn.net/qq_23981335/article/details/122207916