_set_new_mode
Imposta una nuova modalità di gestione per malloc.
int _set_new_mode(
int newhandlermode
);
Parametri
- newhandlermode
Nuova modalità di gestione per malloc; il valore valido è 0 o 1.
Valore restituito
Restituisce la modalità precedente del gestore impostata per malloc. Un valore restituito 1 indica che, in caso di errore per allocare memoria, malloc ha chiamato precedentemente la nuova routine di gestione; un valore restituito 0 indica che non lo chiama. Se l'argomento newhandlermode non equivale a 0 o 1, restituisce -1.
Note
La funzione C++ _set_new_mode imposta la nuova modalità di gestione per malloc. La nuova modalità del gestore indica se, in caso di errore, malloc deve richiamare la nuova routine del gestore come imposto da _set_new_handler. Per impostazione predefinita, malloc non richiama la nuova routine di gestione in caso di errore nell'allocare memoria. È possibile eseguire l'override di questo comportamento predefinito affinché, quando malloc non riesce ad allocare memoria, malloc chiami la nuova routine del gestore allo stesso modo di come avviene con l'operatore new quando si verifica il medesimo errore. Per ulteriori informazioni, vedere gli operatori nuovo e elimina in Riferimenti al linguaggio C++. Per eseguire l'override del comportamento predefinito, chiamare:
_set_new_mode(1)
all'inizio del programma o collegare con Newmode.obj (vedere Opzioni collegamento).
Questa funzione convalida il parametro. Se newhandlermode è un valore diverso da 0 o 1, la funzione richiama il gestore di parametro non valido, come descritto in Convalida dei parametri. Se l'esecuzione può continuare, **_**set_new_mode ritorna -1 ed imposta errno a EINVAL.
Requisiti
Routine |
Intestazione obbligatoria |
---|---|
_set_new_mode |
<new.h> |
Per ulteriori informazioni sulla compatibilità, vedere Compatibilità nell'introduzione.
Equivalente .NET Framework
Non applicabile. Per chiamare la funzione standard C, utilizzare PInvoke. Per ulteriori informazioni, vedere Esempi di Invocazione della Piattaforma.