- Visual C++源码
- Visual Basic源码
- C++ Builder源码
- Java源码
- Delphi源码
- C/C++源码
- PHP源码
- Perl源码
- Python源码
- Asm源码
- Pascal源码
- Borland C++源码
- Others源码
- SQL源码
- VBScript源码
- JavaScript源码
- ASP/ASPX源码
- C#源码
- Flash/ActionScript源码
- matlab源码
- PowerBuilder源码
- LabView源码
- Flex源码
- MathCAD源码
- VBA源码
- IDL源码
- Lisp/Scheme源码
- VHDL源码
- Objective-C源码
- Fortran源码
- tcl/tk源码
- QT源码
17_2.cpp
资源名称:c.rar [点击查看]
上传用户:puke2000
上传日期:2022-07-25
资源大小:912k
文件大小:1k
源码类别:
C#编程
开发平台:
Visual C++
- #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