Envoyé par
bretus
Comment s'en sortir : Avec des pointeurs que tu auras la charge de détruire (la liste ne fera pas delete).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
std::list< Probleme* > problemes ;
problemes.insert( new Maladie() );
problemes.insert( new Blessure() );
/*
En principe, on planque ça dans le destructeur d'un objet à soit qui gère et construit les
problèmes
*/
for ( std::list< Probleme* >::iterator it = problemes.begin(); it != problemes.end(); ++it ){
it->afficheDiagnostique() ;
}
/*
En principe, on planque ça dans le destructeur d'un objet à soit qui gère et construit les
problèmes
*/
for ( std::list< Probleme* >::iterator it = problemes.begin(); it != problemes.end(); ++it ){
delete *it ;
*it = NULL ;
}
problemes.clear(); |
Es qu'on pourrait utiliser des pointeurs intelligents à la place, comme sa j'aurais pas besoin de les détruires moi même ?
list< shared_ptr<Probleme> > problemes ;
Partager