Compartilhar via


set_unexpected (<exception>)

Estabelece novo unexpected_handler para ser quando uma exceção inesperada foi encontrada.

unexpected_handler 
   set_unexpected( 
      unexpected_handler fnew 
   ) throw( );

Parâmetros

  • fnew
    A função a ser chamado quando uma exceção inesperada for encontrada.

Valor de retorno

O endereço de unexpected_handleranterior.

Comentários

fnew não deve ser um ponteiro nulo.

O padrão de C++ requer que unexpected é chamado quando uma função gerencie uma exceção que não está em sua lista throw. A implementação atual não suporta esta. O exemplo a seguir chama unexpected diretamente, que chama em unexpected_handler.

Exemplo

// 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
}

Saída

My unhandled exception function called.

Requisitos

exceção <deCabeçalho: >

Namespace: std

Consulte também

Referência

<exception>

get_unexpected