Salut,

Quel est la bonne façon de faire pour effacer des éléments dans une map, suivant un critère du type chaine == "valeur".

Est ce que cette façon est correct et performante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
        std::map<std::string,S>::const_iterator it;
        for(it=mapS.begin();it!=mapS.end();)
        {
            if( it->second.var41 == id )
            {
                mapS.erase( it );
            }
            else
                ++it;
        }
y a t-il mieux?

Merci.