gpt4 book ai didi

c++ - 从另一个 const std::map 初始化 const std::map 的一部分

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:06:12 26 4
gpt4 key购买 nike

我有一个 const std::map 初始化如下:

const std::map< int, std::string > firstMap = {
{ 1, "First" },
{ 2, "Second"}
};

然后我想制作另一个 const std::map,它使用第一个映射作为其初始值的一部分,并且还扩展了原始数据。所以我猜这将是类似的东西:

const std::map< int, std::string > secondMap = {
{ <firstMap>},
{ 3, "Third"}
};

因此 secondMap 具有三对。这可能吗?

编辑: map 也声明为外部。

最佳答案

不,std::map 没有合适的构造函数。但是,您可以做的是使用 lambda 就地初始化变量。

const auto secondMap = [&firstMap] {
std::map<int, std::string> map(firstMap);
map[3] = "Third";
return map;
}();

关于c++ - 从另一个 const std::map 初始化 const std::map 的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50238058/

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