vector向量容器中使用insert()方法,可以在vector对象的任意位置前插入一个新的元素,书上说,insert()方法要求插入的位置,是元素迭代器的位置,而不是元素的下标,刚开始不太明白什么意思,直到看了一个程序后才知道。

#include<vector>
#include<iostream>

using namespace std;

int main()
{
    vector<int> v(3);
    v[0]=2;
	v[1]=7;
	v[2]=9;

	v.insert(v.begin(),8);//在最前面插入新元素。
	v.insert(v.begin()+2,1);//在迭代器中第二个元素前插入新元素
    v.insert(v.end(),3);//在向量末尾追加新元素。

	vector<int>::iterator it;

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


运行结果:

可以看到,在最前面插入一个8后,向量中元素为:8 2 7 9.而第二次,在第二个元素前插入1的时候,此时的2指的是目前迭代器中的第二个(下标从0开始的,即此时第二个数为7).

   

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐