Bonjour,
j'aimerais savoir ce qui se passe lorsqu'on a un pointeur (disons int*ptr) et que l'on fait
ptr = new int[0];?
Je m'attendais a priori à ce que ptr soit égal à NULL mais après vérification ce n'est pas le cas.
Merci!
Bonjour,
j'aimerais savoir ce qui se passe lorsqu'on a un pointeur (disons int*ptr) et que l'on fait
ptr = new int[0];?
Je m'attendais a priori à ce que ptr soit égal à NULL mais après vérification ce n'est pas le cas.
Merci!
Ca t'alloue un tableau avec 0 élément. Et si c'est négative le comportement n'est pas définie.
Un tableau de 0 éléments???
Et vers quelle adresse pointe ptr alors?
Ressources proposées par 3DArchi - Les fonctions virtuelles en C++ - Cours et tutoriels C++ - FAQ C++ - Forum C++.
Je me pose la même question.et le delete ne pose pas problème ?
J'ai testé delete[] ptr après ptr=new int[0] et je n'ai d'erreur ni à la compilation ni à l'exécution. Après, est-ce que le boulot a bien été fait...
Partager