提高unordered_map-错误或使用不当?

问题描述

| 我从boost :: unordered_map库(v1.45.0)中得到了奇怪的行为。 在我的课堂上,我创建一个对象:
boost::unordered_map<uint16,MyStruct *> bufferStructMap;
然后在构造函数初始化列表中对其进行初始化:
 MyClass::MyClass () : bufferStructMap( ) { .... } 
然后,我尝试使用方法“ at”从其中提取某些内容(请参阅链接中的API):
const uint16 bufferNumber = 1;
try {

    MyStruct * ptr = ( this->bufferStructMap.at( bufferNumber ) );
}
catch ( std::out_of_range & e ){

  //deal with exception
}
当映射为空时,即使API指出唯一可以抛出的异常是std :: out_of_range,应用程序也会中止对\“ bufferStructMap.at(...)\”的调用。 谁能检测到我的代码有问题,或者这是一个增强错误? 谢谢!     

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)