terminate (CRT)
Volání abort nebo funkce určíte pomocí set_terminate.
void terminate( void );
Poznámky
terminate Funkce se používá s C++ zpracování výjimek a nazývá se v následujících případech:
Thrown C++ výjimky nebyl nalezen odpovídající popisovač úlovku.
Funkce destruktoru vyvolána výjimka během unwind zásobníku.
Po vyvolání výjimky je poškození zásobníku.
terminatevolání abort ve výchozím nastavení.Toto výchozí nastavení můžete změnit psaní ukončení funkce a volání set_terminate s názvem funkce jako svůj argument.terminatevolá funkci poslední zadána jako argument set_terminate.Další informace naleznete v tématu Neošetřené výjimky C++.
Požadavky
Rutina |
Požadované záhlaví |
---|---|
terminate |
<eh.h> |
Další informace o kompatibilitě, viz Compatibility v úvodu.
Příklad
// crt_terminate.cpp
// compile with: /EHsc
#include <eh.h>
#include <process.h>
#include <iostream>
using namespace std;
void term_func();
int main()
{
int i = 10, j = 0, result;
set_terminate( term_func );
try
{
if( j == 0 )
throw "Divide by zero!";
else
result = i/j;
}
catch( int )
{
cout << "Caught some integer exception.\n";
}
cout << "This should never print.\n";
}
void term_func()
{
cout << "term_func() was called by terminate().\n";
// ... cleanup tasks performed here
// If this function does not exit, abort is called.
exit(-1);
}
Ekvivalent v rozhraní .NET Framework
Nelze použít Použijte volání funkce standardní C, PInvoke. Další informace naleznete v tématu Příklady vyvolat platformu.