map初始化

1    //初始化map 
2     map<int,string> mp;//构造一个map
3     map<int,string> mps(mp);//在用map构造另一个map
4     map<int,string> maps(mp.begin(),mp.end());//使用map范围构造另一个map,两个类型需要一样
5     
6     //构造 map  复杂一点的 等等 key和value是任何值
7     map<string,vector<string > > mp;
8     map<int,map<string,vector<string> > > mps;
9     

测试代码:

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 void show(map<int,string>& mp){
 4     map<int,string>::iterator iter=mp.begin();
 5     while(iter!=mp.end()){
 6         cout<<iter->first<<" "<<iter->second<<endl;//用了pair对,因此我们对于其中的元素需要通过it->first,或者it->second来访问。
 7         iter++;
 8     }
 9 }
10 int main()
11 {
12     //先构造 map
13     map<int,string> mp;//构造一个map
14 
15     //插入数据
16     mp.insert(pair<int,string>(1,"map one"));
17     mp.insert(pair<int,string>(2,"map two"));
18     mp.insert(pair<int,string>(3,"map three"));
19     mp.insert(pair<int,string>(4,"map four"));
20 
21 
22     map<int,string> mps(mp);//在用mp构造另一个
23     map<int,string> maps(mp.begin(),mp.end());//使用map范围构造另一个map,两个类型需要一样
24 
25     show(mp);
26     cout<<mps.size()<<endl;//4
27     show(mps);
28     cout<<maps.size()<<endl;//4
29     show(maps);
30     return 0;
31 }

运行结果:

 1 1 map one
 2 2 map two
 3 3 map three
 4 4 map four
 5 4
 6 1 map one
 7 2 map two
 8 3 map three
 9 4 map four
10 4
11 1 map one
12 2 map two
13 3 map three
14 4 map four
原文地址:https://www.cnblogs.com/NirobertEinteson/p/11967562.html