我正在尝试用 C++ 编写简单的哈希表。我的哈希表实现模板如下所示:
template<class k, class v, class h<k>, class e<k> >
class my_hash {
};
其中
k = 键的类类型
v = 值的类类型
h = 散列 fn 的
类类型 e = 相等 fn 的类类型
我已经像这样定义了 h 类
template<class k>
class h {
};
我会专门针对不同的 k 类型的模板,例如 int、string 等。我想要做的是每当我用 k 调用 my_hash 模板时,它应该自动获取
h<k>
作为哈希函数类型。为此,我该如何定义模板?
如果我像上面显示的那样定义它,g++ 会给出编译器错误,说 h 不是模板?有人可以帮我吗?