clear() 清空所有元素
empty() 判断Vector是否为空(返回true时为空)
erase() 删除指定元素 (可以用指针来代替迭代器)
iterator erase( iterator loc ); //要删除元素的迭代器
iterator erase( iterator start, iterator end ); //要删除的第一个元素的迭代器,要删除的第二个元素的迭代器
insert() 插入元素到Vector中
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)的所有元素
pop_back() 移除最后一个元素
push_back() 在Vector最后添加一个元素(参数为要插入的值)
例:
std::vector<int> v; //现在容器中有0个元素
int values[] = {1,3,5,7};
v.insert(v.end(), values+1, values+3); //现在容器中有2个元素分别为:3,5
v.push_back(9); //现在容器中有3个元素分别为:3,5,9
v.erase(iter+1); //现在容器中有2个元素分别为:3,9
v.insert(v.begin()+1, 4); //现在容器中有3个元素分别为:3,4,9
v.insert(v.end()-1, 4, 6); //现在容器中有7个元素分别为:3,4,6,6,6,6,9
v.erase(v.begin()+1, v.begin()+3); //现在容器中有5个元素分别为:3,6,6,6,9
v.pop_back(); //现在容器中有4个元素分别为:3,6,6,6
v.clear(); //现在容器中有0个元素
if (true == v.empty()) //如果容器为空则输出"null"
{
std::cout<<"null"<<std::endl;
}
void main()
{
vector<int> a;
for (int i=0;i<10;i++)
{
a.push_back(i);
}
for (int i=0;i<a.size();i++)
{
printf("%d, %d\n",a.at(i),a.size());
}
printf("\n");
a.pop_back();
for (int i=0;i<a.size();i++)
{
printf("%d, %d\n",a.at(i),a.size());
}
printf("\n");
vector<int>::iterator iter=a.begin();
a.erase(iter);//删除操作要进行遍历
for (int i=0;i<a.size();i++)
{
printf("%d, %d\n",a.at(i),a.size());
}
system("pause");
}