Поделиться через


set_terminate (<exception>)

Устанавливает новое terminate_handler, вызываемый при завершении программы.

terminate_handler
   set_terminate(
      terminate_handler _Pnew
   ) throw( );

Параметры

  • _Pnew
    Функция, которая вызывается при завершении.

Возвращаемое значение

Адрес предыдущей функции, которая использовала вызываться при завершении.

Заметки

Функция задает новое terminate_handler как *_Pnew функции.Таким образом, _Pnew не должно быть пустым указателем.Функция возвращает адрес предыдущей заканчивается обработчик.

Пример

// exception_set_terminate.cpp
// compile with: /EHsc /c
#include<exception>
#include<iostream>

using namespace std;

void termfunction( ) 
{
   cout << "I'll be back." << endl;
   abort( );
}

int main( ) 
{
   terminate_handler oldHand = set_terminate(termfunction);

   // Throwing an unhandled exception would also terminate the program
   throw bad_alloc( );

   // The program could also be explicitely terminated with:
   // terminate( );
}
  
  
  

Требования

заголовок: <exception>

std пространство имен: