类导出设计

时间:2013-10-20 16:11:59

标签: c++ class inheritance

这是我设计的照片。对不起,不清楚。

enter image description here

A类中的内容是通用的。 类B,C,D,E,F包含其他自定义函数。 通过使用这种类型的组合,我可以解决8个问题。

以排列问题为例。是第一个,称为G.从B,C和E中获取信息并将它们组合起来以便解决问题。

问题是......我不知道如何将它们结合起来。

这是带有功能的表。 enter image description here

抱歉我的白板。它已经很老了,我没有任何其他论文。

谢谢。

1 个答案:

答案 0 :(得分:1)

似乎你和我忙于几乎相同类型的继承结构。我所做的基本如下。您将继承中运行的函数定义为它们所在的所有类的私有函数。然后,当它们被调用时,您可以执行以下操作:

A.H

class A
{ private:
   int z;
public:
 ...constructors and destructors for A...
void print() const;
};

A.cpp

#include "A.h"
void A::print() const
{
   cout << "This class contains an int with value " << z << endl;
}

B.cpp

#include "A.h"
class B : public A
{
private:
   int i;
public:
...constructors and destructors...
void print() const;
};

B.cpp

#include "B.h"

void B::example() const
{
    cout << "This class contains ant with value: " << i << endl;
    A::print();
}

这样当你在类型B的对象上调用print()函数时,它不仅会打印它的成员变量,而且还会打印它的基类的成员变量,因为你调用了这个函数。

您也可以尝试使用虚拟功能

http://www.cplusplus.com/doc/tutorial/polymorphism/

希望这有点像你要找的。