set_new_handler
安裝要呼叫的函式,當使用者 operator new 無法其嘗試配置記憶體時。
new_handler set_new_handler(
new_handler _Pnew
) throw( );
參數
- _Pnew
要安裝的new_handler。
傳回值
0在第一次呼叫並在後續的呼叫上 new_handler 。
備註
函式會維護的靜態 新的處理常式。 指標儲存 _Pnew ,然後傳回指標先前儲存的值。 new運算子使用新處理常式(size_t)。
範例
// new_set_new_handler.cpp
// compile with: /EHsc
#include<new>
#include<iostream>
using namespace std;
void __cdecl newhandler( )
{
cout << "The new_handler is called:" << endl;
throw bad_alloc( );
return;
}
int main( )
{
set_new_handler (newhandler);
try
{
while ( 1 )
{
new int[5000000];
cout << "Allocating 5000000 ints." << endl;
}
}
catch ( exception e )
{
cout << e.what( ) << endl;
}
}
需求
標題: <new>
命名空間: std