C++vector常用函数及使用技巧

作用:它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。

 

vector在C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。

  • 常用方法:

  1. 尾部插入数字:vec.push_back(a);

  2. 使用下标访问元素,cout<

  3. 使用迭代器访问元素:

vector::iterator it;

for(it=vec.begin();it!=vec.end();it++)

   cout<<*it<

 

  1. 插入元素:vec.insert(vec.begin()+i,a);在第i+1个元素前面插入a;

  1. 删除元素:vec.erase(vec.begin()+2);删除第3个元素

  2. vector的元素不仅仅可以是int,double,string,还可以是结构体,但是要注意:结构体要定义为全局的,否则会出错

  3. pop_back 去掉数组的最后一个数据

  4. at 得到编号位置的数据

  5. begin 得到数组头的指针

  6. end 得到数组的最后一个单元+1的指针

  7. front 得到数组头的引用

  8. back 得到数组的最后一个单元的引用

  9. max_size 得到vector最大可以是多大

  10. capacity 当前vector分配的大小

  11. size 当前使用数据的大小

  12. resize 改变当前使用数据的大小,如果它比当前使用的大,者填充默认值

  13. reserve 改变当前vecotr所分配空间的大小

  14. clear 清空当前的vector

  15. rbegin 将vector反转后的开始指针返回(其实就是原来的end-1)

  16. rend 将vector反转构的结束指针返回(其实就是原来的begin-1)

  17. empty 判断vector是否为空

  18. swap 与另一个vector交换数据

 

使用vector需要注意以下几点:

1、如果你要表示的向量长度较长(需要为向量内部保存很多数),容易导致内存泄漏,而且效率会很低;

2、Vector作为函数的参数或者返回值时,需要注意它的写法:

   double Distance(vector&a, vector&b) 其中的“&”绝对不能少!!!

 

你可能感兴趣的:(C)