Enfait je crois que mon problème s'apparente juste a un problème de destruction du contenu d'une map .

j'ai une map qui associe des strings à des cItem* .
( le nom de cette map est Items )

A un moment ( dans une fonction d'un objet , je vais apellé la destrucion de celui-ci par mon gestionnaire d'objet ) .

je fais ceci :

void cRessourcesManager::remove(const std::string & Id )
{
delete Items[Id] ;
Items.erase(Id) ;
}
Jusuqe la tout va bien , par contre en quitant mon programme, je vide cette map et je détruit les objet pointé ( c'est lors de cette pahse que ca plante)

void cRessourcesManager:elete()
{
std::for_each(Items.begin(), Items.end(), DeleteSecond());
Items.clear();
}
avec :
// Structure qui contient la fonction premettant de détruire les cItem * de ma map .
struct DeleteSecond {
template <class Pair> void operator()(Pair & p) const
{ delete p.second; }
};
Je supose que le problème vient de mon "delete Items[id]" non ?