小编mct*_*nne的帖子

C中的通用哈希表

我试图在C中创建一个通用哈希表。我已经阅读了几种不同的实现,并遇到了几种不同的方法。

首先是使用像这样的宏:http : //attractivechaos.awardspace.com/khash.h.html

第二种是使用带有2个void指针的结构,如下所示:

struct hashmap_entry
{
    void *key;
    void *value;
};
Run Code Online (Sandbox Code Playgroud)

据我所知,这种方法并不是很好,因为它意味着映射中的每个条目都至少需要2种分配:一种分配给键,一种分配给值,而与存储的数据类型无关。(那正确吗???)

如果没有采用宏路由,就无法找到一种使它通用的不错的方法。有人有任何提示或示例可以帮助我吗?

c hashtable hashmap

5
推荐指数
1
解决办法
1713
查看次数

标签 统计

c ×1

hashmap ×1

hashtable ×1