以vector <int> v为例:

① v[i]或v.at(i)//返回v[i]的值

② v.size();//返回v数组元素总个数

③ v.front();//返回v数组第一个元素的值

④ v.back();//返回v数组最后一个元素的值

⑤ v.clear();//清空v数组

⑥ v.begin();//返回v数组第一个数的地址

⑦ v.end();//返回v数组最后一个数之后的地址

⑧ v.empty();//判断v数组是否为空,是空则返回1(true),非空(有元素)则返回0(false)

⑨ v.swap(v1);//v1是另一个动态数组,将v和v1元素互换

⑩ swap(v,v1);//同⑨

注意:再次重申,vector的下标是从0开始的!

注意:除v[i]外,其余都是vector的自带函数,因此必须添上括号!

 

 

std库提供了好几种插入,这里最为常用的三种。

① v.push_back(a);//在v数组的尾部插入数a

比如:

有一个动态数组x:2017 2333

调用x.push_back(666);

则x:2017 2333 666

② v.insert(v.begin()+k,a);//在下标k的前面插入数a,k之后的数依次后退一位

//记住,下标是从0开始的!

比如:

动态数组x:1 2 3 4 5 6 

调用x.insert(x.begin()+2,100);

则x:1 2 100 3 4 5 6 

③ x.insert(x.begin()+k,p,a);//在下标k前面插入p个a

 

六、vector的删除

 

也有三种,

① v.pop_back()//删除最后一个元素

② v.erase(v.begin()+k);//删除下标为k的数,返回下一个位置的下标

③ v.erase(v.begin()+l,v.end()-r);/删除下标[l,v.end()-r)的元素