Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Memadamkan Elemen dari C std::vektor mengikut Indeks?
Memadamkan Elemen daripada std::vector by Index
Dalam C , std::vector ialah bekas yang cekap menyimpan elemen dalam ingatan bersebelahan lokasi. Untuk mengalih keluar elemen daripada vektor, fungsi pemadaman digunakan.
Masalah: Diberi std::vector, memadamkan elemen pada titik tertentu indeks.
Contoh:
std::vector<int> vec; vec.push_back(6); vec.push_back(-17); vec.push_back(12); vec.erase(???); // How to delete the second element?
Penyelesaian:
Untuk memadamkan satu elemen mengikut indeks, gunakan std: :sebelah menambah lelaran vektor dengan yang dikehendaki indeks:
vec.erase(std::next(vec.begin(), elementIndex));
Untuk memadamkan julat elemen, nyatakan iterator permulaan dan akhir:
int startIndex = 1; int endIndex = 3; vec.erase(std::next(vec.begin(), startIndex), std::next(vec.begin(), endIndex));
Dalam contoh yang disediakan, kod berikut akan memadamkan elemen kedua (vec[ 1]):
vec.erase(std::next(vec.begin()));
Untuk memadamkan elemen kedua dan ketiga, gunakan:
vec.erase(std::next(vec.begin(), 1), std::next(vec.begin(), 3));
Atas ialah kandungan terperinci Bagaimana untuk Memadamkan Elemen dari C std::vektor mengikut Indeks?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!