我想在通过其他函数声明向量后给出向量的尺寸。
这是因为我之后会知道向量的维度。
有什么方法可以在不使用循环的情况下做到这一点。
例如
std::vector<std::vector<int>>my_vector;
........
........
........
在其他一些函数中,我将声明它的尺寸。
my_vector(2,5);
类似的东西......
我想在通过其他函数声明向量后给出向量的尺寸。
这是因为我之后会知道向量的维度。
有什么方法可以在不使用循环的情况下做到这一点。
例如
std::vector<std::vector<int>>my_vector;
........
........
........
在其他一些函数中,我将声明它的尺寸。
my_vector(2,5);
类似的东西......
my_vector.resize(2, std::vector<int>(5));
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 个元素。