指针作为boost unordered_map的关键

时间:2012-10-17 15:20:18

标签: pointers boost map key unordered-map

我正在尝试使用对象指针作为boost unordered_map的键:

boost::unordered_map<MyObject*, real> mymap;

但是当我尝试访问给定键的值时,它永远找不到它:

boost::unordered_map<MyObject*, real>::const_iterator it = mymap.find(&SomeObject); // it is always equal to mymap.end()

如果我打印地图内容,我可以看到键在那里:

key: 0x3739c60, value: 1
key: 0x4541970, value: 0.873346
...

如果我用std :: map替换boost :: unordered_map,它可以正常工作。

有什么问题?

1 个答案:

答案 0 :(得分:0)

回答我自己的问题...... 我想通过使用更新版本的boost工作正常。似乎是由升级版本1.42中的错误引起的。