【问题描述】
定义一个Fish类,其中包括一个整型的成员数据age;定义构造函数对age进行初始化;定义一个said函数,输出“I am a fish, my age is”加上age的值。
定义Fish的派生类FishKing,其said函数为输出“I, FishKing, ”加上age。
补充片段1:
class Fish {
protected:
int age;
public:
Fish(int age);
virtual void said();
};
Fish::Fish(int age) {
this->age = age;
}
补充片段2:
class FishKing : public Fish {
public:
FishKing(int age) : Fish(age) {}
void said() override;
};
完整代码:
#include <iostream>
using namespace std;
class Fish {
protected:
int age;
public:
Fish(int age);
virtual void said();
};
Fish::Fish(int age) {
this->age = age;
}
void Fish::said() {
cout<<"I am a fish, my age is "<<age<<"."<<endl;
}
class FishKing : public Fish {
public:
FishKing(int age) : Fish(age) {}
void said() override;
};
void FishKing::said() {
cout<<"I, FishKing, "<<age<<endl;
}
int main() {
Fish* pf;
FishKing saltedFishKing(328);
pf = &saltedFishKing;
pf->said();
return 0;
}