Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk mengalih keluar elemen dari bekas C++ STL?

Bagaimana untuk mengalih keluar elemen dari bekas C++ STL?

WBOY
WBOYasal
2024-06-02 11:29:57278semak imbas

Dalam C++ STL, anda boleh mengalih keluar elemen daripada bekas berbeza dengan cara berikut: Alih keluar daripada vektor: Gunakan iterator atau indeks. Alih keluar daripada senarai: gunakan iterator. Untuk mengalih keluar daripada set: Gunakan kaedah erase() yang nilainya ialah elemen yang hendak dialih keluar. Padam daripada peta: Gunakan kaedah erase() dengan nilai kunci elemen yang hendak dipadamkan.

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

Cara Mengeluarkan Elemen daripada Bekas STL C++

Dalam Perpustakaan Templat Standard (STL) C++, terdapat beberapa bekas yang tersedia untuk menyusun data. Bekas ini menyokong pelbagai operasi, termasuk pemadaman elemen. Artikel ini akan menerangkan pelbagai kaedah untuk mengalih keluar elemen daripada pelbagai jenis bekas STL.

Mengalih keluar elemen daripada vektor

Untuk mengalih keluar elemen daripada vektor, anda boleh menggunakan salah satu kaedah berikut:

// 使用迭代器
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]

Mengalih keluar elemen daripada senarai

Untuk mengalih keluar elemen daripada senarai, anda boleh menggunakan kaedah berikut:

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

Padam elemen daripada set

Untuk memadam elemen daripada set, anda boleh menggunakan kaedah berikut:

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

Alih keluar elemen daripada peta

Untuk memadam elemen daripada peta, anda boleh gunakan kaedah berikut:

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

Kes praktikal:

Pertimbangkan aplikasi yang menjejak prestasi pelajar dalam kursus akademik. Aplikasi ini menggunakan bekas STL untuk menyimpan pelajar dan gred mereka. Contoh berikut menunjukkan cara memadam pelajar dan rekod gred mereka daripada bekas:

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

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

Dengan kaedah di atas, elemen boleh dipadamkan daripada pelbagai bekas STL dengan mudah dan cekap.

Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar elemen dari bekas C++ STL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn