Partager via


delete, opérateur (<new>)

Fonction appelée par une expression de suppression pour libérer le stockage pour l'individu d'objets.

void operator delete( 
   void* _Ptr 
) throw( ); 
void operator delete( 
   void *,  
   void * 
) throw( ); 
void operator delete( 
   void* _Ptr, 
   const std::nothrow_t& 
) throw( );

Paramètres

  • _Ptr
    Pointeur dont la valeur sera rendue non valide par la suppression.

Notes

La première fonction est appelée par une expression de suppression pour afficher la valeur d'_Ptr valide. Le programme peut définir une fonction avec cette signature de fonction qui remplace la version par défaut définie par la bibliothèque C++ standard. Le comportement requis doit recevoir une valeur d'_Ptr qui sont null ou qui ont été retournées par un rappel à opérateur nouveau(size_t).

Le comportement par défaut de valeur NULL d'_Ptr est de ne rien faire. Toute autre valeur d'_Ptr doit être une valeur précédente retournée par un appel comme décrit précédemment. Le comportement par défaut pour une telle valeur non NULL d'_Ptr est pour libérer le stockage alloué par le rappel. Il n'est pas spécifié dans les conditions ou partie de ce stockage libéré est allouée par un appel suivant à operator new(size_t), ou vers un d'calloc(size_t), malloc(size_t), ou d'realloc(void*, size_t).

La deuxième fonction est appelée par une expression de suppression de placement correspondant à une nouvelle expression de format new(std::size_t). Elle n'a aucun effet.

La troisième fonction est appelée par une expression de suppression de placement correspondant à une nouvelle expression de format new(std::size_t, const std::nothrow_t&). Le programme peut définir une fonction avec cette signature de fonction qui remplace la version par défaut définie par la bibliothèque C++ standard. Le comportement requis doit recevoir une valeur d'_Ptr qui sont null ou qui ont été retournées par un rappel à operator new(size_t). Le comportement par défaut consiste à évaluer supprimer(_Ptr).

Exemple

Voir le opérateur nouveau pour obtenir un exemple qui utilisent operator delete.

Configuration requise

En-tête : <nouveau>

Espace de noms : std