gpt4 book ai didi

c++ - 声明 std::map 常量

转载 作者:太空狗 更新时间:2023-10-29 19:47:03 24 4
gpt4 key购买 nike

如何声明标准映射常量即

int a[10] = { 1, 2, 3 ,4 };
std::map <int, int> MapType[5] = { };
int main()
{
}

在关于代码段中,可以将值 1、2、3、4 赋给整数数组 a,类似地如何声明一些常量 MapType 值而不是添加main() 函数中的值。

最佳答案

更新:从 C++11 开始,您可以...

std::map<int, int> my_map{ {1, 5}, {2, 15}, {-3, 17} };

...或类似的,其中每对值 - 例如{1, 5} - 编码一个键 - 1 - 和一个映射到的值 - 5unordered_map(哈希表版本)也是如此。


仅使用 C++03 标准例程,考虑:

#include <iostream>
#include <map>

typedef std::map<int, std::string> Map;

const Map::value_type x[] = { std::make_pair(3, "three"),
std::make_pair(6, "six"),
std::make_pair(-2, "minus two"),
std::make_pair(4, "four") };

const Map m(x, x + sizeof x / sizeof x[0]);

int main()
{
// print it out to show it works...
for (Map::const_iterator i = m.begin();
i != m.end(); ++i)
std::cout << i->first << " -> " << i->second << '\n';
}

关于c++ - 声明 std::map 常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4396808/

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