#include <iostream.h>
/* 人的一个类 */
class People
{
public:
People(int height,int weight);
virtual void Teaching_Activities();//=0;
virtual void lunch();//=0;
virtual void physical_activities();//=0;
};
People::People(int height,int weight)
{
}
void People::Teaching_Activities()
{
cout<<"people Teaching_Activities"<<endl;
}void People::lunch()
{
cout<<"people lunch"<<endl;
}void People::physical_activities()
{
cout<<"people physical_activities"<<endl;
}
/* 学生类和老师类均 继承人类 */
class student : public People
{
public:
student();
void Teaching_Activities();
void lunch();
void physical_activities();
};
student::student():People(300,400)
{
}
void student::Teaching_Activities()
{
cout<<"学生是学"<<endl;
}
void student::lunch()
{
cout<<"学生去学生餐厅"<<endl;
}
void student::physical_activities()
{
cout<<"学生打打球"<<endl;
}
class teacher : public People
{
public:
teacher();
void Teaching_Activities();
void lunch();
void physical_activities();
};
teacher::teacher():People(300,400)
{
}
void teacher::Teaching_Activities()
{
cout<<"老师是讲课"<<endl;
}
void teacher::lunch()
{
cout<<"老师去教师餐厅"<<endl;
}
void teacher::physical_activities()
{
cout<<"老师做做操"<<endl;
}
/* 主函数 */
void main()
{
student stu1;teacher teach1;
stu1.physical_activities();
stu1.lunch();
stu1.Teaching_Activities();
teach1.physical_activities();
teach1.lunch();
teach1.Teaching_Activities();
/* 或者直接用下面的代码,它们真正体现了类的多态性(动态) */
// People *p;
// p=&stu1;
// p->physical_activities();
// p->lunch();
// p->Teaching_Activities();
// p=&teach1;
// p->physical_activities();
// p->lunch();
// p->Teaching_Activities();
}
评论