东西是我当年自己做的,比你要的多两个模块不需要的自己看着减掉,应该能符合你的要求。头文件附上:
#ifndef _ks
#define _ks
class list;
class person
{
protected:
int number;
char *name;
char sex;
int age;
char *department;
double telephone;
person *next;
public:
friend class list;
~person();
virtual void change()=0; //修改
virtual void insert()=0; //////插入
virtual void display()=0; //////////////显示
};
//////////////////////////*****************教师类************//////////////////////
class teacher:public person
{
protected:
char titles[20]; //职称
char special[20]; //专业
public:
void change();
void insert();
void display();
};
////////////////////////**********学生类*************//////////////////////////
class student:public person
{
protected:
char classroom[20];
char special[20]; //专业
double grade; //成绩
public:
void change();
void insert();
void display();
};
////////////////////*****************员工类*************///////////////////////
class staff:public person
{
protected:
char position[20]; //职务
char rank[20]; //级别
public:
void change();
void insert();
void display();
};
//////////////////////////************管理类*************/////////////////////////
class list
{
private:
person *head1;
person *head2;
person *head3;
public:
list();
~list();
void insert(int a);
int search(int a);
int del(int a);
int change(int a);
void display(int a);
int save(int a);
};
#endif