我正在尝试使用对象指针作为 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 它可以正常工作。
有什么问题?