set_unexpected (<exception>)
Génère un nouveau unexpected_handler lorsqu'une exception inattendue est produite.
unexpected_handler
set_unexpected(
unexpected_handler fnew
) throw( );
Paramètres
- fnew
La fonction à appeler lorsqu'une exception inattendue est produite.
Valeur de retour
Adresse du dernier unexpected_handler.
Notes
fnew ne doit pas à être un pointeur null.
La norme C++ exige que unexpected soit appelé lorsqu'une fonction lève une exception qui n'est pas sur sa liste throw. L'implémentation actuelle ne prend pas en charge cela. L'exemple suivant appelle unexpected, qui appelle ensuite unexpected_handler.
Exemple
// exception_set_unexpected.cpp
// compile with: /EHsc
#include <exception>
#include <iostream>
using namespace std;
void uefunction()
{
cout << "My unhandled exception function called." << endl;
terminate(); // this is what unexpected() calls by default
}
int main()
{
unexpected_handler oldHandler = set_unexpected(uefunction);
unexpected(); // library function to force calling the
// current unexpected handler
}
Sortie
My unhandled exception function called.
Configuration requise
En-Tête <exception>
Espace de noms : std