我试图找出如何将const类成员变量(在本例中为向量)初始化为类的构造函数中的某些任意值。
基本上,在课程定义中,我有:
const vector < pair <float, float> > myVector;
在类的构造函数中,我希望将myVector
的大小设置为任意值,并使用任意值填充它。但是,我的编译器说,因为它是一个const,它不能被改变,这是有道理的,但我不确定如何完成我在这里尝试做的事情。
答案 0 :(得分:1)
在初始化列表中分配:
class MyClass {
public:
MyClass()
: myVector(createVector())
{ }
private:
vector<pair<float,float>> createVector() {
vector<pair<float,float>> v;
// populate with whatever
return v;
}
const vector<pair<float,float>> myVector;
};