我从cplusplus.com获取以下代码:
// set_terminate example
#include <iostream>
#include <exception>
#include <cstdlib>
using namespace std;
void myterminate () {
cout << "terminate handler called\n";
abort(); // forces abnormal termination
}
int main (void) {
set_terminate (myterminate);
throw 0; // unhandled exception: calls terminate handler
return 0;
}
由于代码中有未处理的异常,它需要调用 myterminate() 函数,该函数设置为终止处理程序并应该覆盖默认的终止处理程序。
程序崩溃但没有调用 myterminate()。我正在使用 Visual C++ 2008 速成版。
代码有什么问题?