首页 > 其他 > 详细

实验五

时间:2019-06-04 13:44:07      阅读:93      评论:0      收藏:0      [点我收藏+]
技术分享图片
#include <iostream>
#include<string>
#include"MachinePets.h"
#include "PetCats.h"
#include "PetDogs.h"
using namespace std;


void play(MachinePets *p){
  cout<<p->getNickname()<<" says "<<p->talk()<<endl;
}


int main() {
PetCats cat("miku");
PetDogs dog("da huang");
play(&cat); // 按照play()形参,传递参数
play(&dog); // 按照play()形参,传递参数
return 0;
}
main.cpp
技术分享图片
#include <iostream>
#include"MachinePets.h"
using namespace std;


MachinePets::MachinePets{const string s):nickname(s){
}
string MachinePets::getNickname()const{
    return nickname;
}
MachinePets.cpp
技术分享图片
#ifndef MachinePets_H
#define MachinePets_H

#include <string>
using namespace std;

class MachinePets
{ public:
   MachinePets(const string s);
   string gettalk()const;
   virtual float talk( )=0;
  private:
   string nickname;
};

#endif
MachinePets.h
技术分享图片
#include<string>
#include"PetDogs.h"

using namespace std;

PetCats::PetCats(const string s):MachinePets(s){
}
string PetCats::talk(){
    return "nia~~";
}
PetCats.cpp
技术分享图片
#ifndef PetCats_H
#define PetCats_H
#include"MachinePets.h"
#include <string>
using namespace std;

class PetCats:public MachinePets
{ public:
   PetCats(const string s);
   string talk();

};


#endif
PetCats.h
技术分享图片
#include<string>
#include"PetDogs.h"

using namespace std;

PetDogs::PetDogs(const string s):MachinePets(s){
}
string PetDogs::talk(){
    return "woof~~";
}
PetDogs.cpp
技术分享图片
#ifndef PetDogs_H
#define PetDogs_H
#include"MachinePets.h"
#include <string>
using namespace std;

class PetDogs:public MachinePets
{   public:
        PetDogs(const string s);
        string talk();
};


#endif
PetDogs.h

 

实验五

原文:https://www.cnblogs.com/changtingzao/p/10972860.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!