suppression d'un pointeur
Bonjour, après chaque delete je désire mettre mon pointeur à NULL. J'ai chopé sous http://cpp.developpez.com/faq/cpp/?p...elete_sequence (comment détruire les pointeurs d'un conteneur ?) une fonction qui marche très bien. Mais je trouve que c'est un peu "lourd" comme code. Alors, je me suis fait la macro suivante :
Code:
1 2 3 4 5 6
|
#define DELETE(p) \
do{ \
delete p; \
p = NULL; \
} while 0 |
avec le code suivant
Code:
1 2 3 4 5 6 7 8
|
vector<DataExpRodage2000 *> dataexp;
for(size_t i = 0 ; i < dataexp.size() ; i++)
{
/* ici je crée mon dataexp[i] */
}
for(size_t i = 0 ; i < dataexp.size() ; i++) DELETE(dataexp[i]); |
mais à cette dernière ligne j'ai une erreur à la compilation :
Citation:
error C2059: syntax error : 'constant'
D'où provient mon erreur ?
Merci d'avance