我希望先创建一个没有大小限制的向量(vector<int> times
),然后在类的构造函数中定义它的大小(times(size)
)。
我可以使用初始化列表来实现,如下所示:
class A (int size): times(size) {};
但我的问题是,为什么我不能在类的构造函数之外像以下代码一样执行它?
我的意思是,为什么下面的代码是错误的?
class A
{
public:
A(int size);
private:
std::vector<int> line;
};
A::A(int size)
{
line(size);// here I got the error
}
line(size)
出现错误
line
的函数,并传入一个名为size
的参数。毫不奇怪,编译器变得困惑了。 - john