【源码+文档】家谱管理系统

本文档详细介绍了家谱管理系统的功能要求、设计与实现。系统包括Node类和LinkedList类的设计,实现了成员信息的增删改查功能。Node类存储家族成员数据,LinkedList类负责家谱结构的操作。主程序提供交互式操作,允许用户进行家谱管理。源码和文档已上传至【WRITE-BUG数字空间】。
摘要由CSDN通过智能技术生成

1.2 功能要求

本项目的实质是完成兑家谱成员信息的建立,查找,插入,修改,删除等功能,可以首先定义家族成员数据结构,然后将每个功能作为一个成员函数来完成对数据的操作,最后完成主函数以验证各个函数功能并得到运行结果。

二、设计

2.1 Node 类设计

Node 类是一个模板类,存储一个 T 类型的值和两个指针,分别是代表指向兄弟节点的 next 指针和指向自己子节点的 link 指针。

2.2 LinkedList 类设计

首先,LinkedList 依旧是模板类,它存储了两个成员变量,分别是代表家谱祖先的 root 节点,以及将来用于代表所操作的人物的 curFind。主要有六个 public 函数,分别是:

  • add(T familyRoot) 传入的是祖先名字,创建家谱中第一个元素。
  • void add(T familyName,T childName) 给家谱中的某个人添加子女。
  • void deleteFromTree(T fatherName) 删除家谱中的某个人,连带子女一起从家谱中删除。
  • void update(T fatherName,T updateName)更改家谱中某个人的姓名
  • void show(T familyName)展示家谱中某个人的子女
  • bool findFromTree(T familyName)找出在家谱中这个人是否存在

还有一个 private 函数:

void findFromTree(Node&l
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值