玩足球的爆米花 · vector push_back ...· 2 周前 · |
不拘小节的酸菜鱼 · 使用linux的GDB打印STL(vecto ...· 2 周前 · |
暗恋学妹的投影仪 · 基元类型、引用 类型与值类型 - CSDN文库· 4 月前 · |
豪爽的花生 · 在pySpark中解析高度嵌套的JSON数据· 10 月前 · |
沉稳的红薯 · Next.js无法解构'(0,config_ ...· 1 年前 · |
神勇威武的日记本 · impala: ...· 1 年前 · |
灰常酷的柳树 · Midjourney ...· 1 年前 · |
向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组。
支持对序列中的任意元素进行快速直接访问,甚至可以通过指针算述进行该操作。提供了在序列末尾相对快速地添加/删除元素的操作。
容器使用一个内存分配器对象来动态地处理它的存储需求。
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 清空当前的vector
15.rbegin 将vector反转后的开始指针返回(其实就是原来的end-1)
16.rend 将vector反转构的结束指针返回(其实就是原来的begin-1)
17.empty 判断vector是否为空
18.swap 与另一个vector交换数据
输出结果为:
0,1,2,3,4,5,6,7,8,9, 0,1,2,3,4, 2.clear()清除容器中所有数据输出结果为:
0,1,2,3,4,5,6,7,8,9,输出结果为:
从小到大: 0,1,3, 从大到小: 3,1,0, 1.注意 sort 需要头文件 #include <algorithm>
2.如果想 sort 来降序,可重写 sort
bool compare(int a,int b) return a< b; //升序排列,如果改为return a>b,则为降序 int a[20]={2,4,1,23,5,76,0,43,24,65},i; for(i=0;i<20;i++) cout<< a[i]<< endl; sort(a,a+20,compare);输出结果为:
直接利用数组:0 1 2 3 4 5 6 7 8 9 利用迭代器:0 1 2 3 4 5 6 7 8 9 5.二维数组两种定义方法(结果一样)输出结果为:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0原文地址:http://blog.csdn.net/w_linux/article/details/71600574