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

📄 17_2.cpp

📁 本文档是C++程序设计教程系列的部分辅助代码。
💻 CPP
字号:
#include <iostream.h>
#include <typeinfo.h>

class Father{
public:
  Father(){ cout <<"father is created.\n"; }
	void DoWork(){ DriveACar(); }
	void DoMannulWork(){ RepairTV(); }
  void DriveACar() {  cout <<&typeid(*this).name()[6] <<" Drive a car.\n";  }
protected:
  void RepairTV() {  cout <<&typeid(*this).name()[6] <<" Repair a TV set.\n";  }
};

class Mother{
public:
  Mother(){ cout <<"mother is created.\n"; }
  void SingASong() {  cout <<&typeid(*this).name()[6] <<" Sing a song.\n";  } 
  void DoWork(){ SingASong();  }                                                    //正式工
  void DoMannulWork() { cout <<&typeid(*this).name()[6] <<" Do mannul work.\n"; }   //小工
};

class Boy : public Father, public Mother{
public:
  Boy(){ cout <<"boy is created.\n"; }
  void RepairTV(){ cout <<"boy "; Father::RepairTV(); }
	void SingASong(){ cout <<"boy "; Mother::SingASong(); }
  void PlayPingPong() { cout <<&typeid(*this).name()[6] <<" Play pingpong.\n";  };
};

void main()
{
   Father father;
   Mother mother;
   Boy boy;

   father.DoWork();
   mother.DoWork();
   mother.DoMannulWork();

   boy.PlayPingPong();
   boy.DriveACar();
   boy.SingASong();

   father.DoMannulWork();
   boy.RepairTV();
}

//修改class Father
//void RepairTV(); 改为public

⌨️ 快捷键说明

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