为什么我的向量需要一个常数值



我正在尝试使用向量实现邻接列表图。在我的向量声明中,我一直得到一个错误";表达式必须具有常数值"我不明白为什么会出现这个错误,因为我认为向量已经是动态数组了,这不会是个问题。

int nodes = 5;
vector<int> adjacencyList[nodes];

数组变量的大小必须是编译时常数,而与数组元素的类型无关。

目前还不清楚您的数组声明是否是有意的。如果你想要一个向量的动态数组,那么你可以使用一个向量数组。如果您的意图是创建一个向量,那么不要使用方括号,因为方括号是数组的语法。以下是如何初始化特定大小的单个矢量的示例:

std::vector<int> adjacencyList(nodes);

最新更新