_new_handler

提供: RAD Studio
移動先: 案内検索

new.h:インデックス への移動


ヘッダーファイル

new.h

構文

typedef void (*pvf)();

pvf _new_handler;

説明

_new_handler には,引数がなく,void を返す関数へのポインタが含まれます。operator new() は,必要な領域を割り当てることができない場合,_new_handler が指す関数を呼び出します。その関数が戻ると,再度割り当てを試みます。デフォルトでは,_new_handler が指す関数は,単にアプリケーションを終了します。ただし,このハンドラをアプリケーションで別の関数に置き換えて,領域の解放を試みることができます。それには,_new_handler に直接割り当てるか,関数 set_new_handler を呼び出します。この関数は,前のハンドラへのポインタを返します。

別の方法として,関数 set_new_handler を次のように使用することもできます。

pvf set_new_handler(pvf p);

_new_handler は,主に C++ バージョン 1.2 との互換性を維持するために提供されています。通常,この機能は,operator new() のオーバーロードによって提供されます。