我是c ++的新手,所以我有点厌倦了 我想做那样的事情:
`
int max = 30;
class MyClass{
vector<int> data(max);
};
但它没有用,因为它没有认识到“max”是我刚刚初始化的int。 所以我改变了:
class MyClass{
MyClass();
int max;
vector<int> data(max);
}
MyClass::MyClass(){
max = 40;}
除非我在构造函数中初始化向量,否则不起作用,但我不知道正确的sintax。
我该如何使这项工作?我想要的只是初始化“max”,然后将其用作向量的初始大小。
答案 0 :(得分:1)
教授/老师应该告诉你有关初始化列表的信息。语法如下所示:
class MyClass {
std::vector<int> data;
public:
MyClass(int max) : data(max) { }
};