我在发布配置中使用VS2010和C ++
以下执行正常:
int status;
try
{
status = myfunction(arg1, arg2);
}
catch (int e)
{
cout << "An exception occurred. Exception Nr. " << e << endl;
}
然而,下面的程序崩溃了:
int status;
status = myfunction(arg1, arg2);
发生了什么事? 我没有方法的来源,myfunction,它是第三方dll的一部分。
答案 0 :(得分:5)
通过删除try / catch块,您不会捕获调用该函数时引发的异常。这会导致未捕获的异常将堆栈一直汇总到main()
,因为它仍然未处理,退出程序
从oputput看来,抛出的整数似乎是错误发生的代码。要查看是否可以进行协调,您需要查找错误代码。