map的元素都是“实值/键值”所形成的一个对组。每个元素都有一个键,是排序的准则。每个键只能出现一次,不允许重复使用。map可以被视为关联式数组,也就是具有任意索引型别的数组。map就是一种红黑树的K,V模型
关于STL中map的使用方法:
1、关于map迭代器的使用
这些迭代器迭代器的使用和set中迭代器的使用类似
#include<iostream>
#include<stdlib.h>
#include<string>
#include<map>
using namespace std;
int main()
{
map<string, string> mp;
mp["left"] = "左边";
mp["right"] = "右边";
mp["up"] = "上";
mp["down"] = "下";
map<string, string>::iterator it1=mp.begin();
map<string, string>::reverse_iterator it2=mp.rbegin();
while (it1 != mp.end())
{
cout <<it1->first<<" ";
++it1;
}
cout << endl;
while (it2 != mp.rend())
{
cout << it2->first << " ";
++it2;
}
system("pause");
return 0;
}
2、关于map的容量
#include<iostream>
#include<stdlib.h>
#include<string>
#include<map>
using namespace std;
int main()
{
map<string, string> mp;
mp["left"] = "左边";
mp["right"] = "右边";
mp["up"] = "上";
mp["down"] = "下";
cout << mp.size() << endl;
cout << mp.empty() << endl;
system("pause");
return 0;
}
3、关于map的operator[]