Vider une std::map de pointeur
Bonjour,
Je cherche a suprimer tous les pointeurs qui figurent dans une std::map<int, SDL_Surface*>, et j'ai tenter d'utiliser ce code :
Code:
1 2 3 4 5
| for(TListSurface::iterator i = ListSurface.begin(); i != ListSurface.begin(); ++i)
{
SDL_FreeSurface((*i).second);
ListSurface.erase(i);
} |
Mais cela ne fonctione pas, et provoque un plantage a la fermeture de mon aplication, quand les elements doivent êtrent détruit(Joli message de window : "****.exe a rencontrer un problème et doit fermer. Nous vous prions de ...). Pouriez vous m'exepliquer pourquoi et m'indiquer la marche a suivre?