Sdílet prostřednictvím


set_terminate (<exception>)

Vytvoří nový terminate_handler má být volána při ukončení programu.

terminate_handler 
   set_terminate( 
      terminate_handler fnew 
   ) throw( );

Parametry

  • fnew
    Funkce, která bude volána při ukončení.

Vrácená hodnota

Adresa předchozí funkce, kterou lze volat při ukončení.

Poznámky

Zavádí novou funkci terminate_handler jako funkce *fnew.Tedy fnew nesmí být nulový ukazatel.Funkce vrátí adresu předchozího ukončení rutiny.

Příklad

// exception_set_terminate.cpp
// compile with: /EHsc
#include <exception>
#include <iostream>

using namespace std;

void termfunction()
{
    cout << "My terminate function called." << endl;
    abort();
}

int main()
{
    terminate_handler oldHandler = set_terminate(termfunction);

    // Throwing an unhandled exception would also terminate the program
    // or we could explicitly call terminate();
    
    //throw bad_alloc();
    terminate();
}

Výsledek

My terminate function called.

Požadavky

Záhlaví:<výjimka>

Obor názvů: std

Viz také

Referenční dokumentace

<exception>

get_terminate