博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第五次实验
阅读量:4569 次
发布时间:2019-06-08

本文共 1926 字,大约阅读时间需要 6 分钟。

验证性实验一

第一个是将派生类变成了基类,第二个则是因为虚函数的存在,派生类不会变为基类。

验证性实验二

由于有纯虚数的存在,三个派生类可以用同一个函数实现三个派生类各自的需要,比较方便。

实验三

mian.cpp

#include
#include
#include"PetCats.h"#include"PetDogs.h"using namespace std;void play(MachinePets &a);int main() {PetCats cat("miku");PetDogs dog("da huang");play(cat); // 按照play()形参,传递参数play(dog); // 按照play()形参,传递参数return 0;}void play(MachinePets &a){ cout<
<<" says "<
<

machinepet.h

#ifndef MACHINEPETS_H#define MACHINEPETS_H#include
#include
using namespace std;class MachinePets{public: MachinePets(string s):nickname(s){} string getnickname(); virtual string talk()=0; friend void play(MachinePets *a);private: string nickname;};#endif // !MACHINEPETS_H

machinepet.cpp

#include
#include
#include"MachinePets.h"using namespace std;string MachinePets::getnickname(){ return nickname;}

petcats.h

#ifndef PETCATS_H#define PETCATS_H#include"MachinePets.h"#include
using namespace std;class PetCats:public MachinePets{public: PetCats(const string s); string talk();};#endif

petcats.cpp

#include
#include
#include"MachinePets.h"#include"PetCats.h"using namespace std;PetCats::PetCats(const string s):MachinePets(s){}string PetCats::talk(){ return "miao wu~";}

petdogs.h

#ifndef PETDOGS_H#define PETDOGS_H#include"MachinePets.h"using namespace std;#include
class PetDogs:public MachinePets{public: PetDogs(const string s); string talk();};#endif

petdogs.cpp

#include
#include
#include"PetDogs.h"#include"MachinePets.h"using namespace std;PetDogs::PetDogs(const string s):MachinePets(s){ }string PetDogs::talk(){ return "wang wang~";}

对纯虚数还不太理解,以至于开始的时候在两个派生类中没有声明虚函数的函数,还要继续努力。

转载于:https://www.cnblogs.com/0906mxyd/p/10975834.html

你可能感兴趣的文章
Android仿腾讯应用宝 应用市场,下载界面, 有了进展button
查看>>
安卓|五大逆向软件下载
查看>>
5 OK6410裸机调试(不用Jlink)
查看>>
“模板”学习笔记(5)-----编译器在处理函数模板的时候都干了啥
查看>>
教你用shell写CGI程序
查看>>
窗口 对话框 Pop Dialog 示例
查看>>
ubuntu(centos) server安装vmware tools
查看>>
数据结构之最大不重复串
查看>>
为什么要配置sdk-tools/platform-toools?
查看>>
自己动手开发更好用的markdown编辑器-07(扩展语法)
查看>>
maven dependency:tree中反斜杠的含义
查看>>
队列的循环队列
查看>>
程序中的日期格式
查看>>
大众点评CAT错误总结以及解决思路
查看>>
从0开始学爬虫3之xpath的介绍和使用
查看>>
Shell成长之路
查看>>
vim下正则表达式的非贪婪匹配
查看>>
一个python的计算熵(entropy)的函数
查看>>
spring源码学习——spring整体架构和设计理念
查看>>
模拟window系统的“回收站”
查看>>