第9章:容器

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的函数


进阶例子收集

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值