在一些C ++代码中,我有一个类,我们称之为masterClass,它包含几个类,subClassA,subClassB等成员。
我应该在哪里创建子类?我应该首先构造并初始化它们,然后将它们传递给masterClass吗?或者我应该在masterClass的构造函数中构建和初始化它们,还是在masterClass上的初始化成员函数内部?
一般来说,最好的方法是什么?
答案 0 :(得分:0)
你的masterClass和subClass之间的关系似乎是组合。
我的建议是分别创建subClass和masterClass。并将subClass的实例视为masterClass的成员。与您所说的“首先构造并初始化它们,然后将它们传递给masterClass”相同。由于这是组合物的正确用法。
class subClassA {
//...
};
class subClassB {
//...
};
class masterClass {
//...
private:
subClassA subA;
subClassB subB;
};