捕获时std :: out_of_range异常?

时间:2015-08-08 11:35:30

标签: c++

我在IDE输出日志中收到此异常消息,即使我有一个捕获它的代码,如果它发生。

enter image description here

以下是代码本身:

t_ptr obj_ptr;

try {
    obj_ptr = _objects.at(file);   
}
catch (std::out_of_range e) {
    return nullptr;
}

return obj_ptr.get();

应该发生吗?当std :: map.at()失败时,它不像我正在使用obj_ptr

1 个答案:

答案 0 :(得分:3)

"第一次机会"异常意味着调试器注意到抛出了异常。这不是一个错误(并且实际上是执行继续),只是对程序员的帮助,可能正在寻找异常被错误吞噬。