当发生异常时,Visual Studio的调试器可以立即中断应用程序的执行。 例如(一个微不足道的):
try{
a= b/0; // Faulty code
}
catch(.){
printf("I know the code above is faulty.");
}
执行程序时,Visual Studio始终会破坏错误的代码。如果C ++ try{} catch {} block
出现异常,如何将其配置为不中断?
答案 0 :(得分:0)
编辑:以下内容适用于C#/ CLR。我不知道是否有[非托管] C ++代码的等价物。
你不能 - 选项是“突然抛出”或“未处理中断”。
但是,可以完成的是整个方法可以使用DebuggerNonUserCode属性进行注释。使用此批注,调试器不会因为在方法中生成和处理的异常而中断。 (对于方法传播 out 的异常,它仍会中断。)
公共语言运行库不向此属性添加语义。它供源代码调试器使用。例如,Visual Studio 2005 [和2010]中的,调试器在调试器窗口中不显示具有此属性的元素,不会在具有此属性的方法中停止[包括从被调用方法抛出异常时] ,并且不允许在方法中设置断点。
谨慎使用:)
或者,如果适用,只需排除某些类别的异常就不会被调试器捕获,这可能是有益的,因为它是一种不那么具有侵入性的方法。
快乐的编码。