9.1 vector
定义
vector<类型> 变量名
源由
用法
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:改变当前vector所分配空间的大小;
13.erase:删除指针指向的数据项;
14.clear:清空当前的vector
15.rbegin:将vector反转后的开始指针返回
16.rend:将vector反转后的结束指针返回;
17.empty:判断是否为空
18.swap:与另一个vector交换数据;
简单例子
详解
9.2 set
定义
与vector相比,set的值是不能相同的,如果相同,将会被删除;
源由
用法
1.begin():返回容器的第一个元素;
2.end():返回容器最后一个元素;
3.clear():删除set容器中的所有元素;
4.empty():判断set容器是否为空;
5.max_size:返回容器可能饮食的元素最大个数;
6.size():返回当前set容器的个数;
7.rbegin():返回的值和end()相同;
8.rend():返回的值与begin()相同;
简单例子
详解
进阶例子收集
9.3 map
定义
与set相比,map是一个键值对,key与value,且key不能相同;
源由
用法
map<键值类型,值类型> 变量名
简单例子
详解
1.通常使用pair或者make_pair来赋值,当然也可以用value_type来赋值;
2.增加元素,如
map m
m.insert(make_pair(1,"one"));
m.insert(pair(2,"two"));
m.insert(map::value_type(3,"three"));
3.查
m.find(1);
4.删
m.erase(m.find(1));
5.操作如下:
(1)begin():返回指向map头部的迭代器
(2)clear():删除所有元素
(3)count():返回指定元素出现的次数
(4)empty():如果map为空则返回true
(5)end():返回指向map末尾的迭代器
(6)equal_range():返回特殊条目迭代器对;
(7)erase():删除一个元素;
(8)find():查找一个元素;
(9)get_allocator():返回特殊条目的迭代器;
(10)inset():插入元素
(11)key_comp():返回比较元素key的函数;
(12)lower_bound():返回键值>=给定元素的第一个位置;
(13)max_size():返回可以容纳的最大元素的个数;
(14)rbegin():返回一个指向map发问的逆向迭代器;
(15)rend():返回一个指向map头部的逆向迭代器;
(16)size():返回map中元素的个数;
(17)swap():交换两个map;
(18)upper_bound():返回键值>给定元素的第一个位置;
(19)value_comp():返回比较元素的value的函数
进阶例子收集