在 C++ 中,std::map 容器用于存储键值对。要替换 map 中的元素,您可以通过迭代器来访问和修改元素。以下是一个示例代码:

#include <iostream>
#include <map>

int main() {
    std::map<int, std::string> myMap;
    myMap[1] = 'One';
    myMap[2] = 'Two';
    myMap[3] = 'Three';

    // 使用迭代器遍历 map
    for (auto it = myMap.begin(); it != myMap.end(); ++it) {
        std::cout << it->first << ': ' << it->second << std::endl;
    }

    // 替换 map 中的元素
    auto it = myMap.find(2);
    if (it != myMap.end()) {
        it->second = 'New Two';
    }

    std::cout << std::endl;

    // 再次遍历 map,查看替换后的结果
    for (auto it = myMap.begin(); it != myMap.end(); ++it) {
        std::cout << it->first << ': ' << it->second << std::endl;
    }

    return 0;
}

输出结果为:

1: One
2: Two
3: Three

1: One
2: New Two
3: Three

在这个示例中,我们首先创建一个 std::map<int, std::string> 对象,并添加一些键值对。然后,我们使用迭代器遍历 map,并输出每个键值对的内容。

接下来,我们使用 find 函数查找键为 2 的元素,并将它的值替换为 'New Two'。然后,我们再次使用迭代器遍历 map,并输出替换后的结果。

请注意,如果要替换 map 中的元素,可以使用迭代器的 second 成员变量来访问和修改值。

C++ map 指针:如何替换元素

原文地址: https://www.cveoy.top/t/topic/pURp 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录