【发布时间】:2013-04-21 09:57:48
【问题描述】:
是否可以将地图存储在数组中?你能帮我怎么做吗? 很明显,我可以存储例如 int,但我不知道如何使用地图来做到这一点。
谢谢!
【问题讨论】:
-
试试吧。如何声明
int的数组?你如何声明map?
是否可以将地图存储在数组中?你能帮我怎么做吗? 很明显,我可以存储例如 int,但我不知道如何使用地图来做到这一点。
谢谢!
【问题讨论】:
int 的数组?你如何声明map?
你可以用完全相同的方式来做。假设你想从std::string 映射到int:
std::map<std::string, int> array[10];
这将为您提供包含 10 个这些地图的数组。您可能更喜欢使用封装数组的std::array 容器:
std::array<std::map<std::string, int>, 10> array;
或者,如果您希望能够添加地图以动态调整数组大小,您可以使用std::vector:
std::vector<std::map<std::string, int>> array;
【讨论】:
我建议您为此使用std::vector。然后,您可以轻松地创建地图矢量:
std::vector<std::map<std::string, int> > maps;
请注意,在 C++11 中,> 字符之间不需要额外的空格。
【讨论】: