你能告诉我怎么写多维地图吗?对于二维地图,我执行了以下操作:
map<string, int> Employees
Employees[“person1”] = 200;我正在尝试使用类似于following的东西来进行3d映射。
map<string, string, int> Employees;
Employees[“person1”, “age”] = 200;你能告诉我做这件事的正确方法吗?
有没有办法把所有的map元素都初始化为0?就像在数组上一样,我们可以说int array[10]={0};
发布于 2012-02-12 18:06:34
你需要创建这样的地图的地图。
map<string, map<string, int> > employees;
employees["person1"]["age"] = 200;发布于 2012-02-12 18:14:26
您可以使用utility库的pair类来组合两个对象:
map<pair<string, string>, int> Employees;
Employees[make_pair("person1", "age")] = 200;发布于 2012-02-12 18:16:08
您可以使用元组作为键,而不是嵌套的boost::tuple;(这是一段c++11代码,您也可以对元组执行相同的操作)。
#include<map>
#include<tuple>
#include<string>
using namespace std;
map<tuple<string,string>,int> m;
int main(){
m[make_tuple("person1","age")]=33;
}https://stackoverflow.com/questions/9247948
复制相似问题