A voir également:
- C++ NULL and delete
- Just delete me - Guide
- Hiberfil.sys delete - Guide
- Pourquoi han est vivant fast and furious 4 - Forum Cinéma / Télé
2 réponses
"détruire" signifie libérer la mémoire qui sera donc réutilisable. Si on ne libère pas la mémoire avec "delete", il y a une fuite mémoire et le programme prend de plus en plus de place.
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
30 janv. 2007 à 16:32
30 janv. 2007 à 16:32
salut.
Null met le pointeur à une valeur nul, tandis que delete detruit.
Exemple :
tu as deux pointeur de type T : a et b.
T *a1=a;
T *b1=b;
b=NULL;
delete a;
lALORS : L'objet pointer par a et par a1 seront détruit.
b ne pointera plus nulle par, mais l'objet pointé par b est toujours présent et accessible par b1.
NULL ne détrui pas un objet, il mes le pointeur à 0.
En fait normalement, NULL est défini comme suit :
#define NULL 0
Null met le pointeur à une valeur nul, tandis que delete detruit.
Exemple :
tu as deux pointeur de type T : a et b.
T *a1=a;
T *b1=b;
b=NULL;
delete a;
lALORS : L'objet pointer par a et par a1 seront détruit.
b ne pointera plus nulle par, mais l'objet pointé par b est toujours présent et accessible par b1.
NULL ne détrui pas un objet, il mes le pointeur à 0.
En fait normalement, NULL est défini comme suit :
#define NULL 0