Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 포착되지 않은 예외에 대한 종료 동작 사용자 정의


이 튜토리얼에서는 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