C++ “与”的区别是什么;向量<;int>;v[]”;及;向量<;向量<;int>&燃气轮机;v";

C++ “与”的区别是什么;向量<;int>;v[]”;及;向量<;向量<;int>&燃气轮机;v";,c++,vector,C++,Vector,我不知道向量v[]和向量v vectorv[]={{0,1},{2,3}; v[0][0]=4; v[0][1]=2; v[0]。推回(4); 对于(int i=0;i

我不知道
向量v[]
向量v

vectorv[]={{0,1},{2,3};
v[0][0]=4;
v[0][1]=2;
v[0]。推回(4);
对于(int i=0;ivectorv[]={{0,1},{2,3};
这是一个向量数组


向量v={0,1},{2,3};
这是向量的向量


记忆或创作过程是否有差异

vector<int>v[] = {{ 0, 1 }, { 2, 3 }};
所以当然,是的,记忆和创造都有区别

  • 前者是一个固定的二维向量数组。虽然第二维度(向量)可以增长或收缩,但第一维度不是。它类似于[2xy]矩阵

  • 后者是向量的向量。所以第一维度和第二维度都可以改变。所以它可以类似于[xy]矩阵,其中X和Y都可以在运行时改变


前者是
向量的数组
,后者是
向量的
向量
。前者的大小是固定的,尽管其中的向量是动态的。后者对于其中的向量和包含它们的向量都是动态的。@WhozCraig:Aha!!水平是可变的,垂直是固定的。谢谢
vector<vector<int>> v = { {0, 1}, {2, 3} };

v[0][0] = 4;
v[0][1] = 2;
v[0].push_back(4);

for (int i = 0; i < v[0].size(); i++)
    cout << v[0][i] << endl;

cout << v[1][0] << endl;
return 0;
vector<int>v[] = {{ 0, 1 }, { 2, 3 }};
vector<vector<int>> v = { {0, 1}, {2, 3} };