Maison >développement back-end >C++ >Comment supprimer des éléments d'un std :: vector par index ?

Comment supprimer des éléments d'un std :: vector par index ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-13 04:52:14722parcourir

How to Delete Elements from a std::vector by Index?

Suppression d'éléments de std :: vector par index

Requête :

Comment puis-je supprimer des éléments spécifiques d'un std :: vector en fonction de leur index valeurs ?

Approche :

Pour effacer des éléments d'un std::vector par index, utilisez la fonction d'effacement. Cette fonction nécessite des itérateurs spécifiant les points de début et de fin des éléments à supprimer.

Solution :

Suppression d'un seul élément :

Pour supprimer un seul élément à un index spécifique, utilisez ce qui suit approche:

vec.erase(std::next(vec.begin(), n));

Où:

  • vec représente le std::vecteur.
  • n est l'index de l'élément à supprimer (l'indexation commence à partir de 0).

Suppression de plusieurs Éléments :

Pour supprimer plusieurs éléments consécutifs, fournissez un itérateur supplémentaire à la fonction d'effacement, définissant le point final :

vec.erase(std::next(vec.begin(), startIndex), std::next(vec.begin(), endIndex));

Où :

  • vec est le std::vector.
  • startIndex est l'index du premier élément à être supprimé.
  • endIndex est l'index du dernier élément à supprimer (inclus).

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn