Maison > Article > développement back-end > Comment supprimer des éléments avec une valeur spécifique d'un vecteur STL ?
Suppression d'éléments avec une valeur spécifique d'un vecteur STL
Dans le contexte des opérations vectorielles STL, il peut être surprenant qu'il y ait aucune méthode explicite pour supprimer des éléments en fonction de leurs valeurs. Cette opération courante peut être réalisée en utilisant différentes approches.
Utilisation de std::remove
La fonction std::remove sert de méthode utilitaire pour la manipulation de vecteurs. Il réorganise discrètement les éléments du vecteur, en déplaçant ceux qui ne doivent pas être supprimés vers l'avant. Sa valeur de retour est un itérateur pointant vers l'élément suivant le dernier qui n'a pas été supprimé. Cet itérateur peut ensuite être utilisé comme argument à std::erase pour éliminer définitivement les éléments redondants désormais situés à la fin du vecteur :
std::vector<int> vec; // Initialize vec with values int value = n; vec.erase(std::remove(vec.begin(), vec.end(), value), vec.end());
Cette approche identifie et supprime efficacement les éléments spécifiés du vecteur tout en conservant son ordre logique.
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!