operator delete (<new>)
Funzione chiamata da un'espressione delete per rendere nuovamente disponibile l'archiviazione di singoli oggetti.
void operator delete(
void* _Ptr
) throw( );
void operator delete(
void *,
void *
) throw( );
void operator delete(
void* _Ptr,
const std::nothrow_t&
) throw( );
Parametri
- _Ptr
Puntatore il cui valore deve essere reso non valido dall'eliminazione.
Note
La prima funzione viene chiamata da un'espressione delete per eseguire il rendering del valore _Ptr non valido.Il programma può definire una funzione con la firma della funzione che sostituisce la versione predefinita definita dalla libreria standard di C++.Il comportamento richiesto è di accettare un valore _Ptr che è null o che è stato restituito da una chiamata precedente a operatore new(size_t).
Il comportamento predefinito per un valore null _Ptr è di non eseguire alcuna operazione.Qualsiasi altro valore _Ptr deve essere un valore restituito precedentemente da una chiamata come descritto in precedenza.Il comportamento predefinito per tale valore diverso da null _Ptr è recuperare la memoria allocata dalla chiamata precedente.Non è specificato in quali condizioni parte o tutta la memoria recuperata viene allocata da una chiamata successiva a operator new(size_t), o in uno qualsiasi calloc(size_t), malloc(size_t), o realloc(void*, size_t).
La seconda funzione viene chiamata da un'espressione di eliminazione di posizione corrispondente a una nuova espressione del form NUOVO(std::size_t).Non esegue alcuna operazione.
La terza funzione viene chiamata da un'espressione di eliminazione di posizione corrispondente a una nuova espressione del form NUOVO(std::size_t, conststd::nothrow_t&).Il programma può definire una funzione con la firma della funzione che sostituisce la versione predefinita definita dalla libreria standard di C++.Il comportamento richiesto è di accettare un valore _Ptr che è null o che è stato restituito da una chiamata precedente a operator new(size_t).Il comportamento predefinito prevede di valutare delete(_Ptr).
Esempio
Vedere in operatore new per un esempio che utilizzano operator delete.
Requisiti
intestazione: <new>
Spazio dei nomi: deviazione standard