首頁  >  文章  >  後端開發  >  如何從C++ STL容器中刪除元素?

如何從C++ STL容器中刪除元素?

WBOY
WBOY原創
2024-06-02 11:29:57204瀏覽

在 C++ STL 中,可以採用以下方法從不同容器中刪除元素:從 vector 中刪除:使用迭代器或索引。從 list 中刪除:使用迭代器。從 set 中刪除:使用值為要刪除元素的 erase() 方法。從 map 中刪除:使用鍵值為要刪除元素的 erase() 方法。

如何从C++ STL容器中删除元素?

如何從C++ STL 容器刪除元素

在C++ 標準範本庫(STL) 中,有幾種容器可用於組織數據。這些容器支援各種操作,包括刪除元素。本文將介紹從不同類型的 STL 容器中刪除元素的各種方法。

從vector 刪除元素

要從向量中刪除元素,可以使用以下方法之一:

// 使用迭代器
vector<int> vec;
vec.push_back(10);
vec.push_back(20);
vec.erase(vec.begin() + 1); // 删除 vec[1]

// 使用索引
vec.erase(vec.begin(), vec.begin() + 1); // 删除 vec[0]

#從list 刪除元素

要從清單中刪除元素,可以使用下列方法:

list<int> lst;
lst.push_back(10);
lst.push_back(20);
lst.erase(lst.begin()); // 删除第一个元素

#從set 刪除元素

要從集合中刪除元素,可以使用以下方法:

set<int> st;
st.insert(10);
st.insert(20);
st.erase(10); // 删除值为 10 的元素

從map 刪除元素

#要從映射中刪除元素,可以使用以下方法:

map<int, string> mp;
mp.insert(pair<int, string>(10, "Hello"));
mp.insert(pair<int, string>(20, "World"));
mp.erase(10); // 删除具有 key 为 10 的元素

#實戰案例:

考慮一個追蹤學術課程學生成績的應用程式。該應用程式使用 STL 容器來儲存學生和他們的成績。以下範例展示如何從容器中刪除學生和他們的成績記錄:

map<string, int> student_成績;
student_成績.insert(pair<string, int>("John", 90));
student_成績.insert(pair<string, int>("Mary", 80));

// 从映射中删除 John 的记录
student_成績.erase("John");

透過上述方法,可以輕鬆有效地從各種 STL 容器中刪除元素。

以上是如何從C++ STL容器中刪除元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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