std:: terminate_handler
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
헤더에 정의됨
<exception>
|
||
|
typedef
void
(
*
terminate_handler
)
(
)
;
|
||
std::terminate_handler
는 함수 포인터 타입(인수를 받지 않고
void
를 반환하는 함수에 대한 포인터)으로,
std::set_terminate
와
std::get_terminate
함수에 의해 설치 및 조회되며
std::terminate
에 의해 호출됩니다.
A
std::terminate_handler
는 호출자에게 제어를 반환하지 않고 프로그램 실행을 종료해야 하며, 그렇지 않을 경우 동작은 정의되지 않습니다.
C++ 구현은 기본적으로
std::terminate_handler
함수를 제공하며, 이는
std::abort()
를 호출합니다. 널 포인터 값이 설치된 경우(
std::set_terminate
를 통해), 구현체는 기본 핸들러를 대신 복원할 수 있습니다.
예제
|
이 섹션은 불완전합니다
이유: 예제가 없음 |
참고 항목
|
예외 처리 실패 시 호출되는 함수
(함수) |
|
|
std::terminate
에 의해 호출될 함수를 변경
(함수) |
|
|
(C++11)
|
현재 terminate_handler를 얻음
(함수) |