0

我想在通过其他函数声明向量后给出向量的尺寸。
这是因为我之后会知道向量的维度。

有什么方法可以在不使用循环的情况下做到这一点。
例如

std::vector<std::vector<int>>my_vector;

........
........
........

在其他一些函数中,我将声明它的尺寸。

my_vector(2,5);

类似的东西......

4

2 回答 2

3

my_vector.resize(2, std::vector<int>(5));

活生生的例子。

于 2012-10-30T14:20:46.837 回答
2
my_vector = std::vector< std::vector<int> >(2, std::vector<int>(5));

或在 C++11 中,如 Xeo 所述:

my_vector = {2, std::vector<int>(5)};

我认为这种方法比调整大小要好,因为如果多次更改大小,最终可能会得到一个锯齿状矩阵:

my_vector.resize(1, std::vector<int>(3));
my_vector.resize(2, std::vector<int>(5));

现在第一行是 3 个元素,第二行是 5 个元素。

于 2012-10-30T14:19:49.247 回答