[C++]类内不能用()在非函数内初始化

class MyClass
{
   vector<int> MyVector(1000,0);//error: expected identifier before numeric constant vector<int> MyVector(1000,0); 
}

在这里,vector<int> MyVector(1000,0);并不在一个函数里,因此报错。可以用另外的方法,例如花括号列表初始化

class MyClass
{
   vector<int> MyVector{vector<int>(1000,0)}
}

或者用复制初始化

class MyClass
{
   vector<int> MyVector = vector<int>(1000,0); 
}

以上在C++11环境下

posted @ 2020-05-01 00:09  zengzhaocheng  阅读(206)  评论(0编辑  收藏  举报