gpt4 book ai didi

c++ - 初始化值为 std::vector 的 std::map 的最佳方法是什么?

转载 作者:太空狗 更新时间:2023-10-29 19:58:04 25 4
gpt4 key购买 nike

我有以下内容:

std::map<std::string, std::vector<std::string>> container;

要添加新项目,我执行以下操作:

void add(const std::string& value) {
std::vector<std::string> values;
values.push_back(value);
container.insert(key, values);
}

有没有更好的方法来增加值(value)?

谢谢

最佳答案

首先,std::map 保存std::pair键值对。您需要插入其中一对:。其次,您不需要制作临时 vector 。

container.insert(make_pair(key, std::vector<std::string>(1, value)));

您可以使用大括号括起来的初始值设定项来表达上述内容:

container.insert({key, {value}});

请注意,std::map::insert 只有在不存在具有相同键的元素时才会成功。如果要覆盖现有元素,请使用 operator[]:

container[key] = {value};

关于c++ - 初始化值为 std::vector 的 std::map 的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26439539/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com