Je ne perds pas beaucoup de mémoire mais étant donné que j'appel ma fonction extrémement souvent, je rempli tout, c'est à dire le Giga de RAM et les 512 Mo de swap.
J'utilise donc le template list pour faire une liste.
Je fais mon allocation normal mais j'ai quelques problèmes au niveau de la désallocation.
std::list<C_job *> *liste_job = new std::list<C_job *>;
je la déclare de cette maniére, j'ai donc un pointeur vers une liste de pointeur vers des objet de type C_job.
j'effectue la désallocation de la sorte :
1 2 3 4 5 6 7 8
| std::list<C_job *>::iterator indice;
for(indice = liste_job->begin(); indice != liste_job->end();indice++)
{
//je désalloue mon objet
delete *indice;
}
//je désalloue maintenant la liste
liste_job->erase(liste_job->begin(),liste_job->end()); |
et pour finir, dans mon programme, je désalloue le pointeur vers list
J'aimerais savoir si ma désallocation est faite correctement?
Merci d'avance.[/code]
Partager