次の方法で共有


set_unexpected (<exception>)

新しい unexpected_handler を予期しない例外が発生したときになるように設定します。

unexpected_handler
   set_unexpected(
      unexpected_handler _Pnew
   ) throw( );

パラメーター

  • _Pnew
    で呼び出される関数

戻り値

前の unexpected_handlerのアドレス。

解説

_Pnew が null ポインターである必要があります。

C++ 標準では、関数が throw 一覧にない例外をスローした場合 unexpected を呼び出す必要があります。現在の実装では、これをサポートしていません。unexpected_handlerを呼び出す次の例では unexpected を直接呼び出します。

使用例

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

using namespace std;

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

int main( ) 
{
   unexpected_handler oldHand = set_unexpected( unfunction );
   unexpected( );
}
  
  
  

必要条件

ヘッダー: <例外>

名前空間: std