首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从变量(C++)初始化数组

从变量(C++)初始化数组
EN

Stack Overflow用户
提问于 2014-03-15 22:28:46
回答 3查看 96关注 0票数 3

我正在做一个编程项目,我在编译时遇到了一个问题.我的代码是用C++编写的:

代码语言:javascript
复制
scanf("%d %d", &number, &shares);
vector<int> graph[number];

我读取变量号,并使用它初始化数组的大小。但这就产生了初始化问题,

非过氧化物元素型vector<int>变长阵列

有人知道我能做什么来解决这个问题吗?

EN

回答 3

Stack Overflow用户

发布于 2014-03-15 22:34:47

您正在尝试定义向量数组,但数组不能具有运行时确定的大小。想必,您想要声明某种类型的向量,您可以这样做:

代码语言:javascript
复制
vector<int> graph(number); // vector of size = number

编辑:在您的评论之后,您想要的似乎是向量的向量:

代码语言:javascript
复制
vector<vector<int>> graph(number);
票数 4
EN

Stack Overflow用户

发布于 2014-03-15 22:36:56

查看这些相关的帖子,因为它们与您的帖子有相同的问题:

票数 2
EN

Stack Overflow用户

发布于 2014-03-15 22:35:31

您正在尝试创建一个向量数组,如果不通过动态分配实现这一点,这不是一件好事。如果您想要一个向量数组,请执行以下操作:

代码语言:javascript
复制
vector<int> * graph = new vector<int>[number];
...
delete[] graph;

如果您想要一个大小的向量,那么执行以下操作:

代码语言:javascript
复制
vector<int> graph(number);
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22430569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档