中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

vector迭代器遍歷刪除元素怎么實現

小億
270
2024-03-16 19:59:48
欄目: 編程語言

要在使用迭代器遍歷vector并刪除元素,可以使用以下方法:

  1. 使用迭代器遍歷vector,并在循環中判斷條件后調用erase()方法刪除元素。
#include <iostream>
#include <vector>

int main() {
    std::vector<int> vec = {1, 2, 3, 4, 5};

    for(auto it = vec.begin(); it != vec.end(); ) {
        if(*it % 2 == 0) {
            it = vec.erase(it);
        } else {
            ++it;
        }
    }

    for(int i : vec) {
        std::cout << i << " ";
    }

    return 0;
}
  1. 使用remove_if()算法結合erase()方法刪除元素。
#include <iostream>
#include <vector>
#include <algorithm>

int main() {
    std::vector<int> vec = {1, 2, 3, 4, 5};

    vec.erase(std::remove_if(vec.begin(), vec.end(), [](int i) { return i % 2 == 0; }), vec.end());

    for(int i : vec) {
        std::cout << i << " ";
    }

    return 0;
}

以上兩種方法都能實現使用迭代器遍歷vector并刪除元素的功能,選擇哪種方法取決于個人偏好和實際需求。

0
宜昌市| 蓬安县| 平泉县| 峡江县| 石棉县| 儋州市| 石楼县| 尉犁县| 子洲县| 黔江区| 阳朔县| 泽州县| 西乌珠穆沁旗| 平顺县| 涪陵区| 喀喇| 苏尼特左旗| 赫章县| 彭水| 长岭县| 金门县| 乌什县| 汝阳县| 六安市| 方山县| 梅河口市| 静海县| 西平县| 襄城县| 永昌县| 昆明市| 明水县| 托克逊县| 东明县| 曲阳县| 长岭县| 东宁县| 石台县| 北流市| 竹北市| 娄底市|