91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

c++ map刪除后迭代器怎么辦

c++
小樊
106
2024-06-25 16:42:36
欄目: 編程語言

在C++中,如果你刪除了一個map中的元素,那么相應的迭代器將會失效,不能再使用。通常,刪除元素后,你可以將迭代器移動到下一個位置,或者重新獲取一個新的迭代器。

以下是一個例子,演示如何在刪除元素后處理迭代器:

#include <iostream>
#include <map>

int main() {
    std::map<int, int> myMap = { {1, 10}, {2, 20}, {3, 30} };

    for (auto it = myMap.begin(); it != myMap.end(); ) {
        if (it->first == 2) {
            it = myMap.erase(it);
        } else {
            ++it;
        }
    }

    for (auto it = myMap.begin(); it != myMap.end(); ++it) {
        std::cout << it->first << " : " << it->second << std::endl;
    }

    return 0;
}

在上面的例子中,我們通過循環遍歷map,如果鍵值等于2,就刪除這個元素并將迭代器移動到下一個位置;否則,只是將迭代器移動到下一個位置。最后,我們再次遍歷map打印出剩余的元素。

0
洛扎县| 达孜县| 屏东县| 山东| 磐石市| 微博| 合水县| 连平县| 敦煌市| 黄梅县| 临西县| 新乐市| 醴陵市| 海安县| 石嘴山市| 会宁县| 汕头市| 陇南市| 明溪县| 开阳县| 阿尔山市| 临澧县| 巴塘县| 冀州市| 五原县| 恩平市| 荔浦县| 平乐县| 湄潭县| 菏泽市| 德州市| 兴山县| 怀化市| 贵溪市| 河南省| 竹北市| 乡城县| 朝阳县| 会东县| 太谷县| 黔江区|