我在IDE输出日志中收到此异常消息,即使我有一个捕获它的代码,如果它发生。
以下是代码本身:
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
。
答案 0 :(得分:3)
"第一次机会"异常意味着调试器注意到抛出了异常。这不是一个错误(并且实际上是执行继续),只是对程序员的帮助,可能正在寻找异常被错误吞噬。