map是按照压入顺序来储存数据的;
unordered_map是不按照压入顺序来储存数据的。
实验代码如下:
#include<iostream>
#include<stack>
#include<map>
#include<unordered_map>
using namespace std;
int main(){
map<int,int> map1;//声明两种map
unordered_map<int,int> map2;
for(int i = 0 ; i < 5 ; i++ ){//都给两种map顺序输入数字0 2 4 6 8
map1[i] = i*2;
map2[i] = i*2;
}
for(auto it=map1.begin(); it!=map1.end(); it++){//各自按照储存顺序输出
cout<<it->second<<' ';
}
cout<<endl;
for(auto it=map2.begin(); it!=map2.end(); it++){
cout<<it->second<<' ';
}
int a;//维持窗口,别的方法实在不好用QAQ
cin>> a;
}
结果如下: