Bonjour,

J'ai juste une question sur le fonctionnement de l'opérateur delete[].
Est il possible d'utiliser l'opérateur delete[] sur une variable qui a été alloué par new, (et non l'opérateur tableau new[]).

Un petit exemple de code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
int *ptr;
 
if (condition1) ptr = new int;
else ptr = new int[10];
/*j'utilise mon ptr ds mon pogramme*/
 
delete[] ptr;
Donc est ce que dans le cas ou la condition1 est vérifiée il est autorisé d'appeller delete[] sur ptr ?

Alors vous me direz pour régler le problème il suffit de faire ptr = new[1] pour ne plus se poser la question, mais c'est plus une question de curiosité que de solution algorithmique.