set_unexpected (<exception>)
建立新的 unexpected_handler ,當未預期的例外狀況發生。
unexpected_handler
set_unexpected(
unexpected_handler fnew
) throw( );
參數
- fnew
當發生未預期的例外狀況發生,要呼叫的函式。
傳回值
之前的位址 unexpected_handler。
備註
fnew 不得為 null 指標。
C++ 標準要求 unexpected 呼叫,當函式擲回不在其擲回清單上的例外狀況時。 目前的實作不支援此。 下列範例會直接呼叫 unexpected ,然後呼叫 unexpected_handler。
範例
// 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
}
Output
My unhandled exception function called.
需求
標頭 : <exception>
命名空間: std