标签:
啊,转眼之间就来到了我学hash_map(2)了。我们也从hash_map转移到了unordered_map上来了,今天这个文章的目的就是要来分享一下使用这个hash_map,哦不,unordered_map的一个方法。
直接贴代码……(懒死算了)
#include <iostream> #include <unordered_map> using namespace std; struct node { int a; bool operator==(const node & n) const { return a == n.a; } }; struct Hash { size_t operator()(const node & n) const { return n.a; } }; int main() { unordered_map<node, int, Hash> ss; for(int i=0;i<10;i++) { node tmp; tmp.a = i; ss[tmp] = i * i; } for(unordered_map<node,int, Hash>::iterator iter = ss.begin();iter != ss.end();iter++) { cout << (iter->first).a << "\t" << iter->second << endl; } }
struct里重载 == 符号,hash函数单独写在外面。
backward_warning.h 这个头文件中已经写出了,使用unordered_map替代ext/hash_map里的hash_map和hash_multimap.
还要注意迭代器的写法,好,结束。
标签:
原文地址:http://www.cnblogs.com/SuperBlee/p/4319080.html