이 튜토리얼에서는 C++에서 포착되지 않은 예외에 대한 동작을 사용자 정의하는 프로그램에 대해 논의할 것입니다.
일반적으로 예외는 try-catch 블록에서 처리되지만 일치하는 catch 블록이 없고 프로그램이 그냥 종료되는 경우가 있습니다. 이 종료() 함수는 사용자 요구 사항에 따라 수정할 수 있습니다.
예시
#include <exception> #include <iostream> using namespace std; //defining custom terminator void myhandler(){ cout << "Inside new terminate handler\n"; abort(); } int main(){ set_terminate(myhandler); try { cout << "Inside try block\n"; throw 100; } catch (char a){ cout << "Inside catch block\n"; } return 0; }
출력
Inside try block Inside new terminate handler