类,表示家庭成员之间的关系



我想创建一个,它可以动态添加家庭成员以及他/她与该成员的关系。

例如:

在一个家庭中,父亲是成员之一,他的妻子是另一个成员,他们有孩子。但是每个家庭的孩子数量是不同的(例如只有一个儿子/只有一个女儿/一个儿子一个女儿等等)。因此子进程的数量在运行时决定。

我有一个表:

  • 成员表:存储所有成员的详细信息,如member_reference_number、姓名、地址、电话号码等。Member_reference_number是标识数据库中唯一成员的主键。此表适用于任何成员(父亲、母亲、儿子、女儿等)。

我想使用member_reference_number来显示关系

面向对象+继承可以帮助您。我想你指的是这个结构:

class Person
{};
class Father : public Person
{};
class Mother : public Person
{};
class Child : public Father, public Mother
{};
class Son : public Child
{};
class Daughter: public Child
{};
class Family
{
  Father father;
  Mother mother;
  std::vector<Child> children;
};

,

              +------------------+               
              |       Person     |               
              +------------------+               
                ^             ^                  
                |             |                  
                |             |                  
                                               
 +------------------+      +------------------+  
 |     Father       |      |     Mother       |  
 +------------------+      +------------------+  
                 ^            ^                  
                 |            |                  
                 |            |                  
                 |            |                  
                                               
              +------------------+               
              |     Child        |               
              +------------------+               
                 ^           ^                   
                 |           |                   
                 |           |                   
                                               
 +------------------+      +------------------+  
 |     Son          |      |    Daughter      |  
 +------------------+      +------------------+  

我认为你可以用FamilyTreeNode来做树。

其中FamilyTreeNode (structure)可以有

-> Male—String

-> Female—String

-> numberofchildren—int

-> Children - array of familytreenode(动态数组).

此处如果有人未婚,则将opp sex设置为null

最新更新