高质量C语言map实现
介绍
在c语言中数组、链表等常用的数据结构还好应付,但是,对于map数据结构,需要使用相对成熟、可靠的实现,那么在github上rxi/map实现值得关注!
rxi/map的代码实现紧凑、清晰、高效,API设计优良。
以我现在的水平来看,能够在API中用const关键词来修饰参数,它所体现的API设计水平就不一般。
代码中用宏技巧来适应不同的数据类型,以达到泛型的目的,也很有借鉴意义
扩展
只是其仅支持const char*
作为key,对于我的使用场景,需要文件句柄到数组下标的映射,就不太友好了。
阅读了rxi/map
代码中编码,感觉可以使用同样的技巧,以用来支持原始类型作为key。研究了下,扩展了一版相对拙劣的实现,以求斧正 :)
实现