【发布时间】:2011-06-11 19:23:14
【问题描述】:
我是 C++ 新手,最近发现我们可以使用以下代码初始化字符串集合:
map <string,string> myArray;
myArray["key1"] = "value1";
myArray["key2"] = "value2";
cout<<myArray["key1"]<<endl; //result: value1
但是如果我必须分配给key2 的不是字符串而是另一个集合怎么办?这是我想它的样子:
map <string, ???another map???> myArray;
map<string,string> secondArray;
secondArray["foo"] = "bar";
myArray["key1"] = "value1";
myArray["key2"] = secondArray;
cout<<myArray["key2"]["foo"]<<endl; //expected result: bar
这可能吗?
【问题讨论】:
-
@Cat 地图不是关联数组吗?
-
@anirudh4444 它们是关联数组,但术语 array 本身通常与恒定时间元素访问相关联。
-
@anirudh4444:那么,关联数组不是数组(反正我不喜欢这个名字)。数组有一个连续的存储。映射通常不会。
标签: c++ arrays multidimensional-array