我可以通过以下方式创建一个大小为
假设在运行时我会得到变量数量不确定的值,例如
n*m
的二维数组:
vector< vector< int > > foo(n, vector< int > (m))
。假设在运行时我会得到变量数量不确定的值,例如
v_1, v_2, v_3, ..., v_k
,并且想要创建以下内容:
vector< vector< ... vector< int > ... > > foo(v_1, vector< ... > (v_2, vector< ... > ..));
换句话说,创建一个大小为v_1* v_2 * v_3 ... *v_k
的多维数组。我该如何做?这可能吗?
X
的方法。只是想看看是否也可以使用Y
来解决它。 - insumityMyData<int,10,20,30>
实际上会产生一个三层嵌套的向量的向量的向量)。 对于运行时使用可变参数构造函数会稍微复杂一些(例如,MyData<int>(10,20,30)
)。但是,要以变量列表作为参数列表在运行时完成所有操作将是非常困难的(但如果有足够的工作量仍然可行)。它不会像vector<vector<vector...>>>
这样的微不足道格式。 - WhozCraig