问题更新:呼唤构造为元素对象在父类的构造函数
我想要做的在C以下++:
struct Param {
public:
int len;
int in1;
float in2;
};
Param params;
class Element {
private:
int value1;
float value2;
public:
Element();
Element(int n) {value1 = n; value2 = 0;}
Element(int n1, float n2) {value1 = n1; value2 = n2;}
}
class Parent {
private:
class Element elem;
vector<Element> elemVec;
public:
Parent();
Parent(int n);
}
我希望写下面的构造,使得在调用Parent
构造函数,类元素elem
和elemVec
的非默认构造函数也被调用。我已经想通了,对于elem
构造函数需要被调用如下:
Parent::Parent(int n) : elem(n) {
}
我现在该如何构建elemVec
向量的每个元素,使得Element(int, float)
构造函数被调用每个向量元素与int
和float
值回升从结构字段params.value1
和params.value2
开始。 elemVec
的大小需要由struct字段params.len
来定义。
在构造函数体中写入一个循环会给构造对象带来不希望的行为。
我需要一个通用的解决方案。赋给构造函数的输入'numVec'不一定是int的向量,甚至可能不是向量。我仅以此为例。 – vikaspraj
你能列出'numVec'可能的类型吗? – hmjd