Supprimer une clé à partir d'un C++ carte
Je voudrais supprimer une clé à partir d'un STL carte. Cependant, map.erase()
ne pas faire n'importe quoi.
Comment pourrais-je aller sur le faire ce
- Effacer quelque chose. Comment l'utilisez-vous? Et qu'est-ce qui vous fait croire que ce n'est pas faire quelque chose?
- carte.effacer(touche).
- Et pour ma deuxième question?
- ce Q ne montre aucun signe de tenter quelque chose. Comment diable est-il arrivé upvoted?
Vous devez vous connecter pour publier un commentaire.
Il dépend entièrement de la façon dont vous êtes l'appeler, mais il semble que vous utilisez peut-être la
first,last
option. Si vous êtes, vous avez besoin de garder à l'esprit qu'il effacer des éléments de départ àfirst
, mais à l'exclusion delast
. Si vous suivez cette règle, itérateur à base de suppression de devrait bien fonctionner, soit comme un élément unique ou une plage.Si vous effacez par la clé, alors il devrait aussi fonctionner, en supposant que la clé est là, bien sûr.
L'exemple de code suivant montre toutes les trois méthodes en action:
sorties:
const key_type &
. Merci pour tout ça!Vous auriez à trouver l'itérateur première
Pour sûr, vous devez vous assurer que l'ITÉRATEUR existe, cependant. Par exemple: