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

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

Mary-Kate Olsen
Libérer: 2024-12-17 01:58:25
original
143 Les gens l'ont consulté

How Do I Efficiently Delete Elements from a C   std::vector by Index?

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

Une tâche courante en programmation consiste à supprimer des éléments d'un conteneur, tel qu'un vecteur. std :: vector est un tableau dynamique en C qui permet une insertion et une suppression efficaces d'éléments. La suppression d'un élément par index peut être réalisée de plusieurs manières.

Suppression d'un seul élément

Pour supprimer un seul élément d'un vecteur, utilisez la fonction effacer(). Cette fonction amène un itérateur vers l'élément à supprimer. Par exemple :

std::vector<int> vec;

vec.push_back(6);
vec.push_back(-17);
vec.push_back(12);

// Deletes the second element (vec[1])
vec.erase(std::next(vec.begin()));
Copier après la connexion

La fonction std::next() est utilisée pour faire avancer l'itérateur jusqu'à l'index souhaité.

Suppression de plusieurs éléments

Pour supprimer plusieurs éléments à la fois, utilisez la fonction Eraser() avec une plage d'itérateurs. La plage est spécifiée par deux itérateurs : l'un pointant vers le premier élément à supprimer et l'autre pointant vers l'élément juste après le dernier à supprimer. Par exemple :

// Deletes the second through third elements (vec[1], vec[2])
vec.erase(std::next(vec.begin(), 1), std::next(vec.begin(), 3));
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal