⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 list1205.cpp

📁 teach yourself C++ in 21 days 第五版
💻 CPP
字号:
//Listing 12.5 Overriding a base class method in a derived class
#include <iostream>
using std::cout;

enum BREED { GOLDEN, CAIRN, DANDIE, SHETLAND, DOBERMAN, LAB };

class Mammal
{
  public:
    // constructors
    Mammal() { cout << "Mammal constructor...\n"; }
    ~Mammal() { cout << "Mammal destructor...\n"; }

    //Other methods
    void Speak()const { cout << "Mammal sound!\n"; }
    void Sleep()const { cout << "shhh. I'm sleeping.\n"; }

  protected:
    int itsAge;
    int itsWeight;
};

class Dog : public Mammal
{
  public:
    // Constructors
    Dog(){ cout << "Dog constructor...\n"; }
    ~Dog(){ cout << "Dog destructor...\n"; }

    // Other methods
    void WagTail() const  { cout << "Tail wagging...\n"; }
    void BegForFood() const  { cout << "Begging for food...\n"; }
    void Speak() const { cout << "Woof!\n"; }

  private:
    BREED itsBreed;
};

int main()
{
   Mammal bigAnimal;
   Dog fidoFido;
   bigAnimal.Speak();
   fidoFido.Speak();
   return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -