_set_new_mode

mallocの new ハンドラー モードを設定します。

int _set_new_mode(
   int newhandlermode 
);

パラメーター

  • newhandlermode
    mallocの New ハンドラー モード; 有効な値は 0 または 1.です。

戻り値

mallocに設定される前のハンドラーのモードを返します。 戻り値 1 は、メモリの割り当てに失敗 malloc が前に new ハンドラー ルーチンを呼び出すことを示します; 戻り値 0 はことを示します。 newhandlermode の引数が 0 または 1 と等しい場合、–1 を返します。

解説

C++ _set_new_mode 関数のセット mallocの new ハンドラー モード。 新しいハンドラー モードは、エラーが発生したときに、malloc が _set_new_handler によって設定された新しいハンドラー ルーチンを呼び出すかどうかを指定します。 既定では、malloc は、メモリの割り当てエラーの際に新しいハンドラー ルーチンを呼び出しません。 この既定の動作をオーバーライドすると、malloc がメモリの割り当てに失敗したときに、new 演算子が同じ理由で失敗したときと同じ方法で、malloc によって新しいハンドラー ルーチンを呼び出すことができます。 詳細については、" C++ Language Reference" new削除 の演算子"を参照してください。 既定の名前をオーバーライドするには、ODBC API 関数:

_set_new_mode(1)

高速 Newmode.obj のプログラムまたはリンク (リンク オプションを参照してください。

この関数は、そのパラメーターを検証します。 newhandlermode が 0 または 1 以外の場合、関数は パラメーターの検証"に説明されているように、無効なパラメーター ハンドラーを呼び出します。 実行の継続 ###_set_new_mode は -1 を返し、EINVALに errno を設定します。

必要条件

ルーチン

必須ヘッダー

_set_new_mode

<new.h>

互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。

同等の .NET Framework 関数

使用できません。標準 C 関数を呼び出すには、PInvoke を使用します。詳細については、「プラットフォーム呼び出しの例」を参照してください。

参照

関連項目

メモリ割り当て

calloc

free

realloc

_query_new_handler

_query_new_mode