map--概述:
映射(Map)和多重映射(Multimap)是基于某一类型Key的键集的存在,提供对TYPE类型的数据进行快速和高效的检索。
l对Map而言,键只是指存储在容器中的某一成员。
lMultimap允许重复键值,Map不允许。
lMap和Multimap对象包涵了键和各个键有关的值,键和值的数据类型是不相同的,这与Set不同。
Map内部数据的组织是一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在Map内部所有的数据Key都是有序的。
|
map c
|
产生一个空的map/multimap,其中不含任何元素
|
|
map c (op)
|
以op为排序准则,产生一个空的map/multimap
|
|
map c1(c2)
|
产生某个map/multimap的副本,所有元素均被复制
|
|
map c (beg, end)
|
以区间[beg; end]内的元素产生一个map/multimap
|
|
map c (beg, end, op)
|
以op为排序准则,利用[beg; end]内的元素生成一个map/multimap
|
|
c.~map()
|
销毁所有元素,释放内存
|
元素的访问
1.定义迭代器(iterator):map<string,float>::iterator pos;
l其中map<string, float>表明这个迭代器的类型,声明一个迭代器pos,迭代器的角色类似于C/C++中的指针。
2.当迭代器pos指向map容器中某个元素:
l表达式pos->first获得该元素的key;
l表达式pos->second获得该元素的value。
题目:
(会陆续添加)
STL--map
原文:http://www.cnblogs.com/acm1314/p/4540599.html