如何在 C++ 的主函数中为全局声明的 2d 向量分配大小?
Posted
技术标签:
【中文标题】如何在 C++ 的主函数中为全局声明的 2d 向量分配大小?【英文标题】:How to assign size to a globally declared 2d vector in the main function in C++? 【发布时间】:2021-04-03 11:20:11 【问题描述】:#include <bits/stdc++.h>
using namespace std;
vector< vector<int> >Adj;
int main()
int n;
cin>>n;
Adj.assign(n);
此代码不适用于为向量分配大小。
【问题讨论】:
向量的大小由resize方法设置。 你为什么认为assign
会改变大小?它可以,只是不是这样。猜测一个函数可能会做什么使编程变得非常困难,相反你应该参考some reference。其他好读物:Why should I not #include <bits/stdc++.h>?、Why is “using namespace std;” considered bad practice?。
【参考方案1】:
-
使用调整大小方法“Adj.resize(n)”。该函数通过插入或删除元素来实际改变容器的内容。
如果给定的 n 值小于当前的大小,则拆除额外的元素。
如果 n 大于容器的当前大小,则将即将出现的元素附加到向量的末尾
【讨论】:
以上是关于如何在 C++ 的主函数中为全局声明的 2d 向量分配大小?的主要内容,如果未能解决你的问题,请参考以下文章