个人微薄: weibo.com/manuscola
分类: C/C++
2013-04-20 16:30:25
zhangzy007z2015-09-17 10:25:42
最近这两天我也在分析glib的hash的实现方法,但是根据作者的描述,貌似有一个地方是错误的就是
g_hash_table_lookup_node 函数中的关于
step++;
node_index += step;
上边两句话的说明实际上不完整,具体代码的原型是:
step++;
node_index += step;
node_index &= hash_table->mask;
同时最后一个关于同掩码做与运算的地方,我认为也是我比较疑虑的地方,也是我没有研究明白的一个地方,我感觉也是作者没有解释的地方,如果按照掩码的方式解释,作者的关于hash的说明都是错误的。具体hash的实现原理到底怎么回事。
希望我与作者一起探讨这块的问题,QQ:317579780,请加我,一起学习进步。