vector<vector<int>>vec1 和 vector<int>vec2[100] 有啥区别? [关闭]
Posted
技术标签:
【中文标题】vector<vector<int>>vec1 和 vector<int>vec2[100] 有啥区别? [关闭]【英文标题】:What is the difference between vector<vector<int>>vec1 and vector<int>vec2[100]? [closed]vector<vector<int>>vec1 和 vector<int>vec2[100] 有什么区别? [关闭] 【发布时间】:2020-07-23 09:46:45 【问题描述】:C++ 中vector<vector<int>>vec1
和vector<int>vec2[100]
有什么区别?
请给我一个例子?
【问题讨论】:
您是否进行了研究以找出每一个的含义?然后比较解释的差异?如果是这样,你发现了什么,你对此有什么疑问?如果没有,为什么不呢? 您可以接受其中一个答案,它解决了您的问题。 【参考方案1】:vector<vector<int>> vec1
是向量整数的向量,其中both vec1
及其行(表示vector<int>
)的大小可以根据元素数量的增加进行调整。
例如,你可以这样做
vec1.resize(2); // you have now two rows or two `vector<int>` in it!
vec1[0].resize(3); // resize or push back as many you want
vec1[1].resize(4);
现在您在vec1
中有以下内容
0, 0, 0, // vec1[0].
0, 0, 0, 0, // vec1[1]
在哪里
vector<int> vec2[100]
是整数向量数组,您可以在其中仅更改数组元素的大小(表示vec2[0]
, vec2[1]
,....) ,而不是数组(表示vec2
)本身。数组的大小是固定的,100。
意味着,您有(固定大小的)100
和 vector<int>
。您可以调整它们的大小。
例如,当你这样做时
vec2[0].resize(3);
vec2[1].resize(4);
你会得到vec2
0, 0, 0, // vec2[0].
0, 0, 0, 0, // vec2[1]
, // vec2[3] with no elements in it!
....
....
// vec2[99] with no elements in it!
【讨论】:
【参考方案2】:vector
Difference Between C++ Vector and Array
Advantages of vector over array in C++
【讨论】:
以上是关于vector<vector<int>>vec1 和 vector<int>vec2[100] 有啥区别? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章