Freigeben über


set_terminate (<exception>)

Richtet ein neues an der Beendung des Programms aufgerufen werden terminate_handler.

terminate_handler
   set_terminate(
      terminate_handler _Pnew
   ) throw( );

Parameter

  • _Pnew
    Die an der Beendigung aufgerufen werden, Funktion.

Rückgabewert

Die Adresse der vorherige Funktion, die verwendete, an der Beendigung aufgerufen werden.

Hinweise

Die Funktion wird als neues terminate_handler das Funktion *_Pnew ein.Daher darf kein _Pnew NULL-Zeiger sein.Die Funktion gibt die Adresse des vorherigen beenden Handler zurück.

Beispiel

// 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( );
}
  
  
  

Anforderungen

Header: <Ausnahme>

Namespace: std