_set_new_mode
Définit un new
mode gestionnaire pour malloc
.
Syntaxe
int _set_new_mode( int newhandlermode );
Paramètres
newhandlermode
new
mode gestionnaire pour malloc
; la valeur valide est 0 ou 1.
Valeur retournée
Retourne le mode de gestionnaire précédent pour malloc
. Une valeur de retour de 1 indique que, en cas d’échec de l’allocation de mémoire, malloc
précédemment appelée routine du new
gestionnaire ; une valeur de retour de 0 indique qu’elle n’a pas été utilisée. Si l’argument newhandlermode
n’est pas égal à 0 ou 1, retourne -1.
Notes
La fonction C++ _set_new_mode
définit le new
mode gestionnaire pour malloc
. Le new
mode gestionnaire indique si, en cas d’échec, malloc
l’appel de la routine du new
gestionnaire est défini par _set_new_handler
. Par défaut, malloc
n’appelle pas la routine du new
gestionnaire en cas d’échec de l’allocation de mémoire. Vous pouvez remplacer ce comportement par défaut afin que, lorsqu’il malloc
ne parvient pas à allouer de la mémoire, malloc
appelle la routine de new
gestionnaire de la même façon que l’opérateur new
le fait lorsqu’il échoue pour la même raison. Pour plus d’informations, consultez les opérateurs et delete
les new
opérateurs dans la référence du langage C++. Pour substituer la valeur par défaut, appelez :
_set_new_mode(1);
début dans votre programme ou lien avec Newmode.obj (voir options de lien).
Cette fonction valide son paramètre. Si newhandlermode
elle est autre que 0 ou 1, la fonction appelle le gestionnaire de paramètres non valide, comme décrit dans la validation des paramètres. Si l’exécution est autorisée à continuer, _set_new_mode retourne -1 et définit la valeur .EINVAL
errno
Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.
Spécifications
Routine | En-tête requis |
---|---|
_set_new_mode |
<new.h> |
Pour plus d’informations sur la compatibilité, consultez Compatibility.
Voir aussi
Allocation de mémoire
calloc
free
realloc
_query_new_handler
_query_new_mode