C++ vector用法
来源:互联网 发布:数据可视化之美 pdf 编辑:程序博客网 时间:2024/06/01 19:47
在c++中,vector是一个十分有用的容器,下面对这个容器做一下总结。
1 基本操作
(1)头文件#include<vector>
.
(2)创建vector对象,vecto<类型>rvec
;
(3)尾部插入数字:vec.push_back(a)
;
(4)使用下标访问元素,cout<<vec[0]<<endl;
记住下标是从0开始的。
(5)使用迭代器访问元素.
vector<int>::iterator it;for(it=vec.begin();it!=vec.end();it++) cout<<*it<<endl;
(6)插入元素: vec.insert(vec.begin()+i,a);
在第i+1个元素前面插入a;
(7)删除元素: vec.erase(vec.begin()+2);
删除第3个元素
vec.erase(vec.begin()+i,vec.end()+j);
删除区间[i,j-1];区间从0开始
(8)向量大小:vec.size();
(9)清空:`vec.clear();
2.vector的元素不仅仅可以使int,double,string,还可以是结构体,但是要注意:结构体要定义为全局的,否则会出错。
相关函数:
1.push_back 在数组的最后添加一个数据2.pop_back 去掉数组的最后一个数据 3.at 得到编号位置的数据4.begin 得到数组头的指针5.end 得到数组的最后一个单元+1的指针6.front 得到数组头的引用7.back 得到数组的最后一个单元的引用8.max_size 得到vector最大可以是多大9.capacity 当前vector分配的大小10.size 当前使用数据的大小11.resize 改变当前使用数据的大小,如果它比当前使用的大,者填充默认值12.reserve 改变当前vecotr所分配空间的大小13.erase 删除指针指向的数据项14.clear 清空当前的vector15.rbegin 将vector反转后的开始指针返回(其实就是原来的end-1)16.rend 将vector反转构的结束指针返回(其实就是原来的begin-1)17.empty 判断vector是否为空18.swap 与另一个vector交换数据
详细的函数实现功能:vector<int> c;c.clear() 移除容器中所有数据。c.empty() 判断容器是否为空。c.erase(pos) 删除pos位置的数据c.erase(beg,end) 删除[beg,end)区间的数据c.front() 传回第一个数据。c.insert(pos,elem) 在pos位置插入一个elem拷贝c.pop_back() 删除最后一个数据。c.push_back(elem) 在尾部加入一个数据。c.resize(num) 重新设置该容器的大小c.size() 回容器中实际数据的个数。c.begin() 返回指向容器第一个元素的迭代器c.end() 返回指向容器最后一个元素的迭代器
0 0
- C++Vector用法
- C++Vector用法
- C++Vector用法
- C++Vector用法
- C++Vector用法
- C++Vector用法
- C++Vector用法
- C++Vector用法
- C++Vector用法
- C++Vector用法
- C++Vector用法
- C++Vector用法
- C++Vector用法
- C++Vector用法
- C++Vector用法
- C++Vector用法
- c++vector用法
- C++Vector用法
- 关于边界值取值的问题
- 机器学习最佳入门学习资料汇总
- 写出高性能的JQuery
- Swift:什么时候使用结构体和类
- Unity3D视图与iOS视图结合
- C++ vector用法
- uva1507(状态压缩+dfs)
- 使用Android Support Annotations优化你的代码
- gridview动态添加行
- Android学习之图片压缩,压缩程度高且失真度小
- 黑马程序员 String类
- poj 3436 ACM Computer Factory (最大流)
- 为什么我照书写的win32程序在vs上编译不了?
- HDU 2095 find your present (2)