Partager via


set_terminate (<exception>)

Génère nouvel un appel à terminate_handler à l'arrêt du programme.

terminate_handler 
   set_terminate( 
      terminate_handler fnew 
   ) throw( );

Paramètres

  • fnew
    La fonction à appeler à l'arrêt.

Valeur de retour

L'adresse de la fonction précédente qui était appelée à l'arrêt.

Notes

La fonction génère un nouvel terminate_handler comme fonction *fnew. Ainsi, fnew ne doit pas à être un pointeur null. La fonction retourne l'adresse du précédent terminent le gestionnaire.

Exemple

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

using namespace std;

void termfunction()
{
    cout << "My terminate function called." << endl;
    abort();
}

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

    // Throwing an unhandled exception would also terminate the program
    // or we could explicitly call terminate();
    
    //throw bad_alloc();
    terminate();
}

Sortie

My terminate function called.

Configuration requise

En-Tête <exception>

Espace de noms : std

Voir aussi

Référence

<exception>

get_terminate