在解释c+中的多维向量语句时感到困惑+; 我对用C++来处理2D向量有点陌生,而且经常在我感到困惑的时候。 在C++中使用二维向量。我正在浏览某人的代码,在解释这行代码时,我感到困惑:

在解释c+中的多维向量语句时感到困惑+; 我对用C++来处理2D向量有点陌生,而且经常在我感到困惑的时候。 在C++中使用二维向量。我正在浏览某人的代码,在解释这行代码时,我感到困惑:,c++,vector,C++,Vector,向量dp(n,向量(m)) 这里,m和n是网格的行数和列数 有人能给我详细解释一下,这句话是什么意思吗 Vector的一个构造函数将param 1作为元素数,将2作为这些元素的值。在本例中,您正在创建一个名为dp的向量。。。它将有n个元素。。。这些元素中的每一个都将被初始化为一个大小为m个元素的新向量 n和m值只与初始尺寸有关。。。Vector将在添加新元素时自动调整自身大小,或者在您预计将发生重大大小更改时,如您明确告知Vector,该行: vector<vector<int>

向量dp(n,向量(m))

这里,m和n是网格的行数和列数

有人能给我详细解释一下,这句话是什么意思吗

Vector的一个构造函数将param 1作为元素数,将2作为这些元素的值。在本例中,您正在创建一个名为dp的向量。。。它将有n个元素。。。这些元素中的每一个都将被初始化为一个大小为m个元素的新向量

n和m值只与初始尺寸有关。。。Vector将在添加新元素时自动调整自身大小,或者在您预计将发生重大大小更改时,如您明确告知Vector,该行:

vector<vector<int>> dp(n, vector<int>(m));
向量dp(n,向量(m)); 正在调用std::vector的函数

对于
dp
,第一个参数是元素的数量,第二个参数是要插入多次的值

内部向量没有指定参数值,参数值将插入默认值(
0
int
的情况下)


因此,在本例中,您正在创建一个包含
n
行的向量,其中每行中都有
m
元素,并且每个元素都是
0
,如果有帮助,您可以将其分解

vector<vector<int>> dp(n, vector<int>(m));
向量dp(n,向量(m)); 实际上与

vector<int> row(m);
vector<vector<int>> dp(n, row);
矢量行(m);
向量dp(n,行);

第一个版本所做的就是消除
变量。

这只是调用各种变量。