class Person{
protected:
char name[5];
int age;
int id;
Person *next;
public:
Person(..);
virtual ~Person();
// 将公用的接口定义为虚函数
virtual Person * get_next(){return(next);}
virtual Person * get_last(){....}
virtual Person * insert(Pseron * node);
virtual Person * remove();
......
};
Person * link_head;
......
Person * tnode;
link_head = new Staff(...);
tnode = new Student(...);
link_head->insert(tnode);
tnode = new Perfessor(...);
link_head->insert(tnode);
link_head->get_next()->remove();
........
class Person{
public:
char name[5];
int age;
int id;
Person *next;
};
class Student:public Person{
public:
int grade;
float average;
};
class Staff:public Person{
public:
float salary_hour;
};
class Perfessor:public Person{
public:
float salary_year;
};
Person类中的指针可以指向Staff或Perfessor的对象吗?怎么实现?