set_unexpected (<exception>)
Ustanawia nowy unexpected_handler się kiedy wystąpił nieoczekiwany wyjątek zostanie osiągnięty.
unexpected_handler
set_unexpected(
unexpected_handler fnew
) throw( );
Parametry
- fnew
Funkcja ma być wywoływana po napotkał nieoczekiwany wyjątek.
Wartość zwracana
Adres poprzedniego unexpected_handler.
Uwagi
fnewnie może być pusty wskaźnik.
C++ Standard wymaga, aby unexpected jest wywoływane, gdy funkcja zgłasza wyjątek, który nie znajduje się na jego liście rzut.Bieżąca implementacja nie obsługuje tego.Poniższym przykładzie wywołuje unexpected bezpośrednio, który następnie wzywa unexpected_handler.
Przykład
// 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
}
Dane wyjściowe
My unhandled exception function called.
Wymagania
Nagłówek:<wyjątku>
Przestrzeń nazw: std