次の方法で共有


set_terminate (<exception>)

プログラムの終了を呼び出す新しい terminate_handler を確立します。

terminate_handler
   set_terminate(
      terminate_handler _Pnew
   ) throw( );

パラメーター

  • _Pnew
    終了に呼び出される関数。

戻り値

終了から呼び出すために使用する前の関数のアドレス。

解説

関数は、関数の *_Pnew として新しい terminate_handler を確立します。したがって、_Pnew が null ポインターである必要があります。関数が前のアドレスを終了するハンドラーを返します。

使用例

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

using namespace std;

void termfunction( ) 
{
   cout << "I'll be back." << endl;
   abort( );
}

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

   // Throwing an unhandled exception would also terminate the program
   throw bad_alloc( );

   // The program could also be explicitely terminated with:
   // terminate( );
}
  
  
  

必要条件

ヘッダー: <例外>

名前空間: std