Partager via


_set_new_mode

Définit un nouveau mode gestionnaire pour malloc.

int _set_new_mode(
   int newhandlermode 
);

Paramètres

  • newhandlermode
    Nouveau mode gestionnaire pour malloc; la valeur valide est 0 ou 1.

Valeur de retour

Retourne le mode précédent du gestionnaire défini pour malloc. Une valeur de retour de 1 indique que, en cas de échec d'allocation de mémoire, malloc a appelé précédement la nouvelle routine du gestionnaire ; une valeur de retour de 0 indique que ce n'est pas le cas. Si l'argument newhandlermode n'est pas égal à 0 ou 1, il retourne – 1.

Notes

La fonction C++ _set_new_mode définit le nouveau mode du gestionnaire de malloc. Le nouveau mode de gestionnaire indique si, en cas de échec, malloc doit appeler la nouvelle routine du gestionnaire comme définit par _set_new_handler. Par défaut, malloc n'appelle pas la nouvelle routine de gestionnaire en cas de défaillance pour allouer de la mémoire. Vous pouvez substituer ce comportement par défaut afin que, lorsque malloc ne réussit pas à allouer la mémoire, malloc appelle la nouvelle routine de gestionnaire de la même manière que l'opérateur new lorsqu'il échoue pour la même raison. Pour plus d'informations, consultez les opérateurs new et delete dans le Guide de référence du langage C++. Pour substituer la valeur par défaut, appelez:

_set_new_mode(1)

tôt dans votre programme, ou lié avec NEWMODE.OBJ (consultez Options de lien).

Cette fonction valide son paramètre. Si newhandlermode est quelque chose d'autre que 0 ou 1, la fonction appelle le gestionnaire de paramètre non valide, comme décrit dans Validation de paramètre. Si l'exécution est autorisée à se poursuivre, , **_**set_new_mode retourne -1 et fixe errno à EINVAL.

Configuration requise

Routine

En-tête requis

_set_new_mode

<new.h>

Pour plus d'informations sur la compatibilité, consultez Compatibilité dans l'introduction.

Équivalent .NET Framework

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez Exemples d'appel de plateforme.

Voir aussi

Référence

Allocation de mémoire

calloc

libre

realloc

_query_new_handler

_query_new_mode