c++覆盖方法

来源:互联网 发布:k60单片机特点 编辑:程序博客网 时间:2024/06/05 14:30
// ConsoleApplication10.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"    #include<iostream>    #include<string>    class Animal{public:Animal(std::string thename);void eat();void sleep();void drool();std::string name;};class Pig :public Animal  //子类继承夫类  {public:Pig(std::string thename);void climb();void eat();};class Turtle :public Animal      //子类继承夫类  {public:Turtle(std::string thename);void swim();void eat();};Animal::Animal(std::string thename){name = thename;}void Animal::eat(){std::cout << "I am eatting!" << std::endl;}void Animal::sleep(){std::cout << "I am sleeping!" << std::endl;}void Animal::drool(){std::cout << "我喜欢美女!" << std::endl;}Pig::Pig(std::string thename) :Animal(thename)  //子类的构造函数。{}Turtle::Turtle(std::string thename) : Animal(thename) //子类的构造函数。{}void Turtle::swim(){std::cout << "我要游泳!" << std::endl;}void Turtle::eat()                                   //子类的覆盖{Animal::eat();std::cout << name << "正在吃鸡腿\n"<< std::endl;}void Pig::climb(){std::cout << "我要上树!" << std::endl;}void Pig::eat()                                         //子类的覆盖{Animal::eat();std::cout << name << "正在吃鱼\n" << std::endl;}int main(){Pig pig("小猪");Turtle s("小甲鱼");pig.eat();s.eat();pig.climb();s.swim();return 0;}

原创粉丝点击