先问个问题吧,map中的key可以相同吗?如果相同,程序会咋样呢?
#pragma warning(disable : 4786) //VC++6.0对map的支持不好,所以要把这个东东放在最前面,否则警告一大堆#include <map>#include <string>#include <iostream>using namespace std;typedef map<int, int> MyMap;int main(){ MyMap m; m.insert(make_pair<int, int>(1, 3)); m.insert(make_pair<int, int>(0, 4)); m.insert(make_pair<int, int>(0, 2)); MyMap::iterator it; for(it = m.begin(); it != m.end(); it++) { cout << it->first << "--->"<< it->second <<endl; } return 0;}
结果为:
0--->4
1--->3
可见,key值相同是没有意义的。那value值可以相同吗?可以的,且看:
#pragma warning(disable : 4786) //VC++6.0对map的支持不好,所以要把这个东东放在最前面,否则警告一大堆#include <map>#include <string>#include <iostream>using namespace std;typedef map<int, int> MyMap;int main(){ MyMap m; m.insert(make_pair<int, int>(1, 3)); m.insert(make_pair<int, int>(2, 3)); m.insert(make_pair<int, int>(0, 3)); MyMap::iterator it; for(it = m.begin(); it != m.end(); it++) { cout << it->first << "--->"<< it->second <<endl; } return 0;}
结果为:
0--->3
1--->3
2--->3
再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow