【发布时间】:2013-02-18 00:12:11
【问题描述】:
我一直在使用<map>,我在其中声明了一张地图,如下所示:
map <int, vector<int> > tree;
我现在正在尝试为它分配值。我的目标是将多个值作为其键的元素。像这样的:
0=null
1=>0
2=>1,0
3=>2,1,0
4=>3,2,1,0
5=>0
我尝试这样分配给地图,但它不起作用:
tree[3]=vector<int>(2,1,0);
但是,以下两种分配工作的方式:
tree[1]=vector<int>(0);
tree[2]=vector<int>(1,0);
问题出在哪里?如何制作一个可以用作 Python 字典的函数?
我没有使用 C++11。
【问题讨论】:
-
这不是一个有效的 std::vector 构造函数调用。
-
在您的场景中向量中整数的顺序是否重要?
-
呃...请检查值。
vector<int>(0)生成一个 empty 向量,vector<int>(1,0)生成一个具有单个元素的向量0。对于std::vector,请参阅constructors。
标签: c++ dictionary vector containers stdmap