【发布时间】:2021-09-18 21:29:18
【问题描述】:
我想在 C++ 类中声明一个可变大小(不是真正的可变大小)数组/向量,但遇到了奇怪的错误。我试图找到解决方案,但无法解决错误。 C++ 大神们,保佑我。
class threeStack{
private:
int numberOfStacks = 3;
int sizeOfEachStack = 2;
int kc = 10;
vector <int> a(numberOfStacks * sizeOfEachStack);
vector <int> tops(numberOfStacks);
};
错误
vector <int> a(numberOfStacks * sizeOfEachStack);
^~~~~~~~~~~~~~
main.cpp:10:27: error: ‘numberOfStacks’ is not a type
vector <int> tops(numberOfStacks);
^~~~~~~~~~~~~~
【问题讨论】:
-
不要包含我们不需要阅读的代码。见minimal reproducible example
-
@463035818_is_not_a_number - 好的,知道了
-
为什么你认为你可以做到
vector<int> a(n);?哪个book 说你可以? -
@Evg 如果我在
vector <int> a(n);之前定义了 n,我绝对可以使用它。 -
@Anant 在函数体中,而不是在类定义中。见here。