std :: out_of_range仅在发布模式下抛出,而不是在调试模式下

时间:2016-06-29 21:04:10

标签: c++ debugging exception std

在我的程序中,如果我在发布模式下运行,我会收到std::out_of_range异常。它在调试模式下运行良好。我使用了很多std::vector s,因此我猜它来自myvec.at(100)来电。

terminate called after throwing an instance of 'std::out_of_range'
  what():  vector::_M_range_check: __n (which is 100) >= this->size() (which is 100)

由于它没有在调试模式下抛出,我无法捕获异常,因此调试很困难。有没有一种简单的方法来处理这个问题?

另外,我假设我的问题是由一些未定义的行为引起的,因此它在调试和发布时的行为有所不同。那是对的吗?

0 个答案:

没有答案