做一个hash模版,我给你个框架
程序代码:
template <class key_type,class value_type>
class hash{
//......
public:
hash();~hash();
//散列函数指针
int (*h)(const key_type& key);//key判等指针
bool (*key_eq)(const key_type& key1,const key_type& key2);
//插入一个新的元素,如果key值重复则插入失败返回0,否则返回1
int insert(const key_type& key,const value_type& value);//删除关键字为key的元素,如果不存在则返回0,否则返回1
int erase(const key_type& key);//返回key值对于的value的指针,如果key值不存在则返回NULL
value_type* find(const key_type& key);//返回key值对应的value的引用,如果key值不存在,则生成一个以key为关键字元素并返回value的引用
value_type& operator [] (const key_type& key);
};