【问题描述】
设计人类、英语学生类和复读机类三个类。体要求如下:
人类( Chinese )
它有一个虚函数 greet,函数输出中文问候,即你好。
英语学生类( EnglishLearner )
继承 Chinese 类,重写 greet 函数,访问性为 public,输出英文问候,即Hello。
复读机类( Repeater )
继承 Chinese 类,以 public 访问性重写 greet 函数,函数调用 Chinese 类的 greet 函数。
【样例输入】
你好
Hello
【样例输出】
你好
Hello
你好
#include <iostream>
using namespace std;
string chinese_message,english_message;
/********* Begin *********/
class Chinese
{
//人类的声明
public:
string a;
virtual void greet() ;
};
//人类的定义
void Chinese::greet(){
a=chinese_message;
cout<<a<<endl;
}
class EnglishLearner : public Chinese
{
//英语学生类的声明
public:
string b;
void greet();
};
//英语学生类的定义
void EnglishLearner::greet ()
{
b=english_message;
cout<<b<<endl;
}
class Repeater : public Chinese
{
//复读机类的声明
public:
string c;
void greet();
};
//复读机类的定义
void Repeater::greet()
{
c=chinese_message;
cout<<c<<endl;
}
/********* End *********/
int main()
{
cin>>chinese_message>>english_message;
Chinese ce;
EnglishLearner le;
Repeater re;
ce.greet();
le.greet();
re.greet();
}
【注】此分栏为西安理工大学C++练习题,所有答案仅供同学们参考。