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