有没有办法暂时禁用Visual C ++中的第一次机会异常?
这样的事情:
void someFunc() {
disableFirstChanceExceptions();
try {
// some code
}
catch (std::exception& e) {
// some code
}
catch (...) {
// some code
}
enableFirstChanceExceptions();
}
我知道第一次机会例外是什么以及如何使用它们。
问题是,我正在分发一个DLL,其中使用了例外 不幸的是,如果客户在他的程序中使用调试器,他会注意到我的实习生例外情况 并不是我想要隐藏它们,更重要的是我想要摆脱这些支持问题。
答案 0 :(得分:3)
您基本上有两种选择:
我建议后者。如果他们遇到异常被抛出并被第三方代码捕获的问题,他们会发现自己无法使用很多的库。他们需要长大并开始表现得像他们知道自己在做什么。
答案 1 :(得分:0)
第一次机会异常不是可以在你的代码中打开和关闭的东西(仅谈论windows,vs,c ++链,不熟悉其他平台)。这是构造内置于运行时系统中以使调试成为可能。可以将调试器配置为忽略部分或全部第一次机会异常。您可以使用ctrl + alt + e调出VS调试器的异常处理行为菜单。这将允许客户端调试来过滤调试器捕获的内容。