完成两个类,一个类Animal,表示动物类,有一个成员表示年龄。一个类Dog,继承自Animal,有一个新的数据成员表示颜色,合理设计这两个类,使得测试程序可以运行并得到正确的结果。
函数接口定义:
按照要求实现类
裁判测试程序样例:
/* 请在这里填写答案 */
int main(){
Animal ani(5);
cout<<"age of ani:"<<ani.getAge()<<endl;
Dog dog(5,"black");
cout<<"infor of dog:"<<endl;
dog.showInfor();
}
输入样例:
无
输出样例:
age of ani:5
infor of dog:
age:5
color:black
#include <iostream>
#include <string>
using namespace std;
// 动物类
class Animal {
protected:
int age; // 访问控制(Access Control):在 Animal 类中,age 成员变量是受保护的,意味着它可以被派生类(Dog 类)访问,但不能被外部直接访问。
public:
// 构造函数,初始化年龄
Animal(int _age) : age(_age) {}
// 获取年龄的函数
int getAge() const { return age; }
};
// 狗类,继承自动物类
class Dog : public Animal {
private:
string color; // 颜色
public:
// 构造函数,初始化年龄和颜色
Dog(int _age, const string& _color) : Animal(_age), color(_color) {}
// 输出狗的信息
void showInfor() const {
cout << "age:" << age << endl;
cout << "color:" << color << endl;
}
};