Maison >développement back-end >C++ >Comment supprimer un élément d'un std::vector par index en C ?
En C , lorsque vous travaillez avec un std::vecteur, il peut y avoir cas où la suppression d'un élément par son index est nécessaire.
Considérez un scénario dans lequel vous avez un vecteur d'entiers et devez supprimer le nième élément.
Pour supprimer un seul élément à la position n, utilisez simplement std::erase avec un itérateur à la position souhaitée. Voici comment procéder :
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()));
std::next(vec.begin()) renvoie un itérateur vers le deuxième élément, qui est ensuite effacé.
Si vous souhaitez supprimez plusieurs éléments consécutifs, utilisez l'effacement avec une plage d'itérateurs :
// Deletes the second through third elements (vec[1], vec[2]) vec.erase(std::next(vec.begin(), 1), std::next(vec.begin(), 3));
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!