
【C++】——用哈希封装unordered_set和unordered_map
在迭代器中应该有两个参数,一个就是节点指针,另一个就是我们的哈希表的指针,因为我们可能需要遍历哈希表的下一个桶的位置。为了同时支持const迭代器与普通迭代器,我们需要三个模版参数,第一个模版参数T代表数据存储类型,第二个模版参数Ref代表存储类型的引用,第三个模版参数Ptr代表存储类型的指针。我们的比较除了用仿函数替换以外,以及需要将key通过对应的转换函数转换以外,还需要将返回值改造了,返回值是pair类型,第一个参数是迭代器,第二个是bool值。为了更加灵活,我们把哈希表的模版参数定义为T。

























