STL库中的关联容器——map
作者:
lgd123
,
2021-07-29 20:34:14
,
所有人可见
,
阅读 293
/*STL库-map
1、map集合 以键与值的组合为元素,且集合 中键唯一,每个元素拥有一个键和一个值。
2、map可以看做是一种能任意类型下标的关联式容器。
3、map容器支持一下操作:
①、size():返回map中的元素数。
②、clear():清空map。
③、begin():返回指向map开头的迭代器。
④、end():返回指向map末尾的迭代器。
⑤、insert((key,val)):向map中插入元素。
⑥、erase(key):删除含有key的元素。
⑦、find():搜索与key一致的元素,并返回指向该元素的迭代器,若没有与key一致的元素,则返回末尾的end()。
*/
//*map的使用实例
#include<iostream>
#include<map>
#include<string>
using namespace std;
//迭代输出map里的元素,记得解引用,才能操作map里的元素。
void print(map<string, int> T)
{
map<string , int >::iterator it;
cout<<T.size()<<endl;
for(it = T.begin();it!=T.end();it++)
{
pair<string, int >item = *it;
cout<<item.first<<" ---> "<<item.second<<endl;
}
}
int main()
{
map<string ,int> T;
//赋值操作
T["red"] = 32;
T["blue"] = 688;
T["yellow"] = 122;
//运算操作
T["blue"] += 312;
print(T);
cout<<endl;
//插入、删除操作
T.insert(make_pair("zebra", 101010));
T.erase("yellow");
print(T);
//查找操作
pair<string ,int > target = *T.find("red");
cout<<endl<<target.first<<" ---> "<<target.second<<endl;
return 0;
}