前言:
参考:B站UP主鱼C_小甲鱼<C++快速入门>
代码调试平台:VS2017,调试成功。
问题描述:
问题描述:猪乌龟动物问题,在此基础上,为Animal添加eat()方法,并在Pig和Turtl中覆盖。
代码实现:
题3:在题1的基础上,为Animal添加eat()方法,并在Pig和Turtl中覆盖。
#include <iostream>
#include <string>
using namespace std;
class Animal
{
public:
Animal(string theName);
void eat();
void sleep();
void drool();
protected:
string name;
};
class Pig :public Animal
{
public:
Pig(string theName);
void climb();
void eat();
};
class Turtle :public Animal
{
public:
Turtle(string theName);
void swim();
void eat();
};
Animal::Animal(string theName)
{
name = theName;
}
void Animal::eat()
{
cout << "i am eating!\n" << endl;
}
void Animal::sleep()
{
cout << "i am sleeping!\n" << endl;
}
void Animal::drool()
{
cout << "i am drooling!\n" << endl;
}
Pig::Pig(string theName):Animal(theName)
{
}
void Pig::climb()
{
cout << "i am climbing!\n" << endl;
}
void Pig::eat()
{
Animal::eat();
cout << "正在吃猪猪的食物。\n" << endl;
}
Turtle::Turtle(string theName) :Animal(theName)
{
}
void Turtle::swim()
{
cout << "i am swimming!\n" << endl;
}
void Turtle::eat()
{
Animal::eat();
cout << "我正在吃龟粮。\n" << endl;
}
int main()
{
Pig pig("小猪佩奇");
Turtle turtle("小甲鱼");
pig.eat();
turtle.eat();
pig.climb();
turtle.swim();
return 0;
}