Udostępnij za pośrednictwem


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

Zobacz też

Informacje

<exception>

get_unexpected