Mengurus Elemen Vektor dalam Rangkaian untuk Gelung
Dalam C 11, berasaskan julat untuk gelung menyediakan cara yang mudah untuk mengulangi unsur-unsur bekas. Walau bagaimanapun, operasi tertentu, seperti mengalih keluar elemen daripada vektor, menjadi bermasalah dalam gelung ini.
Bolehkah Elemen Dialih Keluar daripada Vektor semasa C 11 berasaskan Julat untuk Gelung?
Malangnya, tidak. Berasaskan julat untuk gelung direka untuk lelaran sekali bagi setiap elemen dalam bekas. Ia tidak sesuai untuk mengubah suai bekas itu sendiri, termasuk mengalih keluar elemen.
Alternatif untuk Penyingkiran Elemen:
Untuk mengalih keluar elemen daripada vektor dalam gelung, anda mesti menggunakan gelung tradisional atau variannya. Ini membenarkan pengubahsuaian dan lintasan bukan linear bekas.
Contoh:
auto i = std::begin(inv); while (i != std::end(inv)) { // Do some stuff if (blah) i = inv.erase(i); else ++i; }
Dengan menggunakan fungsi std::begin dan std::end, gelung berulang ke atas vektor menggunakan iterator. Apabila elemen ditandakan untuk dialih keluar, fungsi padam dipanggil, yang membatalkan lelaran yang menunjuk ke elemen yang dialih keluar. Gelung kemudian diteruskan dengan memajukan lelaran.
Kesimpulannya, sementara berdasarkan julat untuk gelung menawarkan kemudahan penggunaan untuk lelaran baca sahaja, untuk operasi seperti mengalih keluar elemen daripada vektor, anda perlu menggunakan tradisional untuk gelung untuk mengekalkan kawalan ke atas pengubahsuaian kontena.
Atas ialah kandungan terperinci Bolehkah Anda Mengalih Keluar Elemen daripada Vektor Semasa Untuk Gelung berasaskan Julat C 11?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!