_set_new_mode
Legt einen neuen Handlermodus für malloc fest.
int _set_new_mode(
int newhandlermode
);
Parameter
- newhandlermode
Neuer Handlermodus für malloc; gültiger Wert ist 0 oder 1.
Rückgabewert
Gibt dem vorherigen Handlermodus zurück, der für malloc festgelegt wird. Ein Rückgabewert 1 gibt an, dass, auf Speicher zu belegen, dass malloc zuvor die neue Handlerroutine aufgerufen hat; ein Rückgabewert 0 gibt an, dass sie nicht geladen. Wenn das Argument newhandlermode nicht 0 oder 1 entspricht, gibt - 1 zurück.
Hinweise
Die Funktion C++ _set_new_mode Legt den neuen Handlermodus für malloc fest. Der neue Handlermodus gibt an, ob bei einem Fehler malloc die neue Handlerroutine aufgerufen werden soll, wie dies von _set_new_handler festgelegt ist. Standardmäßig ruft malloc bei einem Speicherbelegungsfehler nicht die neue Handlerroutine auf. Sie können dieses Standardverhalten überschreiben, sodass, wenn malloc Speicher nicht belegen kann,malloc die neue Handlerroutine genauso aufruft wie der new-Operator, wenn dieser aus demselben Grund fehlschlägt. Weitere Informationen finden Sie in neu und löschen in Operatoren der C++-Sprachreferenz. Um den Standardwert überschreibt, rufen Sie auf:
_set_new_mode(1)
frühzeitig im Programm oder in Link mit Newmode.obj (siehe Linkoptionen).
Diese Funktion überprüft seine Parameter. Wenn newhandlermode einen anderen Wert als 0 oder 1 ist, ruft die Funktion den ungültigen Parameterhandler auf, wie in Parametervalidierung beschrieben. Wenn die Ausführung zulässig ist, um fortzufahren,set_new_mode gibt _-1 zurück und legt errno auf EINVAL fest.
Anforderungen
Routine |
Erforderlicher Header |
---|---|
_set_new_mode |
<new.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität in der Einführung.
.NET Framework-Entsprechung
Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.