我想知道用于计算Boost.Bimap
的哈希值的公式。例如,如果我想知道并手动计算整数123456
或位集1101001
或字符串abcda
。
答案 0 :(得分:1)
Boost将Boost::hash用于无序容器,包括Bimap。可以在here on Ginhub中找到Boost :: hash实现。
有关字符串,请参见hash_range,有关整数,请参见hash_value_signed/unsigned。
您可以使用此代码段来计算哈希值(使用数据类型而不是int
)
boost::hash<int> hasher;
size_t hash_value = hasher(your_int_key);
您还可以为数据类型创建custom hash function。