一、实验的目的与要求:
本实验的目的旨在提高学生思维和提出模型、需要分析与实践编程开发的能力具体掌握以下能力:
1、正确设计类封装、类族派生与继承、动态绑定(虚函数的使用)。
2、熟练使用函数多态中的函数模板以及类模板,体验泛型算法程序设计中的优点与高效性。会使用较简单的C++ STL(标准模板库)来进行泛型程序设计,能自行设计简单的群体类和群体数据的组织(数组模板类与链表模板类)。
3、会简单的Windows程序设计。
4、至少设计一个群体类数据模板(要求是链表类),该链表类模板必须具备常用功能的成员函数:生成新节点、释放结点、链表复制、“=”重载、获取元素个数、判定是否为空、清空链表、在链表中查找和给定值相同的元素、在表头插入节点、表尾插入节点、在当前节点之前插入节点、在当前节点之后插入节点、删节和指定值的相同的元素(可能是多个)删除表头元素、删除表尾元素、获取某指定值的节点元素等操作。
内容:
1、需求分析:一个院系人事管理所需要的各个功能模块,各模块功能的详细说明。(注意:较简单者与拷贝者退回重做,以下要求相同),用viso或UML工具绘制相关图例。
2、逻辑设计:各模块的实现,即应设计出哪些类来完成各模块功能。用UML建模图说明各类及其关系。
3、详细设计:对上述各功能模块对应的各个类的功能编码实现。类的声明及其实现。
4、参考提示:有基类CPeople(人员)类,有系主任、副主任,书记、教务员、班主任、各年级学生、班干部、系学生会、教师、教师所在教研室及负责人。人员都从CPeople直接或间接派生。教职工有工号,学生有学号。
5、设计一个链表模板类,用各类人员相应的类对模板实例化,来管理各类人员,如:增减、查找人员的各种信息、更改人员的职位、统计人数可增加人员等。
6、对People类重载“==” :是否为同一人、“=” 、重载 .
7、正确合理的使用虚函数与动态绑定、运算符的重载、派生、异常处理。凡涉及的字符串都要使用标准库中的字符串类.
8、设计主控模块程序,一律用多文件来组织,尽量采用开发环境来添加各类及成员。源程序要有详尽注释.
我自己看到就暈嘞。。。有那位高手可以幫幫忙啊!??