首頁 >後端開發 >C++ >如何按索引從 C std::vector 中刪除元素?

如何按索引從 C std::vector 中刪除元素?

Patricia Arquette
Patricia Arquette原創
2024-12-14 04:22:09898瀏覽

How to Erase Elements from a C   std::vector by Index?

透過索引從std::vector 中擦除元素

在C 中,std::vector 是連續記憶體中高效存放元素的容器地點。若要從向量中刪除元素,請使用擦除函數。

問題:給定一個std::vector,刪除特定位置處的元素index.

範例:

std::vector<int> vec;

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

vec.erase(???); // How to delete the second element?

解:

解:
vec.erase(std::next(vec.begin(), elementIndex));

int startIndex = 1;
int endIndex = 3;

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

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

解:

vec.erase(std::next(vec.begin(), 1), std::next(vec.begin(), 3));
解>要透過索引刪除單一元素,請使用std: :next將向量迭代器增加所需的值索引:要刪除一系列元素,請指定開始和結束迭代器:在提供的範例中,以下程式碼將刪除第二個元素(vec[ 1]):要刪除第二個和第三個元素,請使用:

以上是如何按索引從 C std::vector 中刪除元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn