在std :: map中插入一个数组元素

时间:2018-09-05 19:36:29

标签: c++ stdmap

我不明白为什么此代码有效:

std::map<int,char> map2;
map2.insert (std::pair<int,char>(3,'a'));

但这不是:

std::map<int,double[2]> map1;
map1.insert (std::pair<int,double[2]>(100,{0,0}));

1 个答案:

答案 0 :(得分:0)

您正在寻找的答案在这里: Using array as map value: can't see the error

最后一个答案在哪里解释,因为数组是不可分配的或不可复制构造的,因此无法映射到。

或者,您可以使用指针数组或向量。