[c++] destructeur de "bool *** tab"

Fermé
guy - 9 févr. 2010 à 23:35
Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 - 10 févr. 2010 à 11:40
Bonjour,

j'ai un doute sur le code du destructeur
	for(int i=0;i< largeur;i++){
		for(int j=0;j< longueur;j++)
			if(tab[i][j]!=NULL)
				delete tab[i][j];
		delete[] tab[i];

	}
	delete[] tab;


est ce correcte sachant que j'ai des elements qui ne pointent vers rien

2 réponses

Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 660
9 févr. 2010 à 23:45
Salut,

ça me parait tout à fait correct.
Tu peux même supprimer le test if (p!=NULL) car la commande delete ne fait tout simplement rien si le pointeur vaut NULL.
0
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
10 févr. 2010 à 08:36
C'est bon à savoir ça...
le problème serait présent si on utilisait free ?
0
Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 660
10 févr. 2010 à 11:40
...dans les "nouveaux" standards du C (ansi en tout cas), ça ne pose pas de problème non plus, d'après ce que je peux lire partout.
0