2009-03-30 9 views
30

non-existante En ce qui concerne le C++ carte STL, effaçant par clé: -C++ carte STL :: effacer une clé

size_type map::erase (const key_type& x); 

Est-il légal d'effacer une clé non existante? C'est-à-dire que l'extrait ci-dessous est correct?

map<char,int> mymap; 
mymap['c']=30; 
mymap.erase('c'); 
mymap.erase('c'); 
mymap.erase('D'); 

Vive

Répondre

41

Oui, en fait, std::map::erase() renvoie une size_type qui indique le nombre de clés effacées. Ainsi, il retourne 0 pour rien effacé et 1 pour quelque chose effacé pour une carte.

Questions connexes