小标
2018-08-14
来源 :
阅读 1251
评论 0
摘要:本文主要向大家介绍了VC编程:VS之多态虚函数的实现,通过具体的内容向大家展示,希望对大家学习VC编程有所帮助。
本文主要向大家介绍了VC编程:VS之多态虚函数的实现,通过具体的内容向大家展示,希望对大家学习VC编程有所帮助。
本文简单地介绍下如何使用多态和虚函数实现程序的调用。
使用工具:VS2008
使用语言:C++
开发步骤:
1.新建对话框程序
2.添加基类,写一个虚函数
Person.h
#pragma onceclass CPerson{public: CPerson(void); ~CPerson(void);public: virtual void Eat();};
Person.cpp
#include "StdAfx.h"#include "Person.h"CPerson::CPerson(void){}CPerson::~CPerson(void){}void CPerson::Eat(){ AfxMessageBox(_T("有个人吃了些水果..."));}
3.添加派生类,重写虚函数
Old.h
#pragma once#include "person.h"class COld : public CPerson{public: COld(void); ~COld(void);public: void Eat();};
Old.cpp
#include "StdAfx.h"#include "Old.h"COld::COld(void){}COld::~COld(void){}void COld::Eat(){ AfxMessageBox(_T("年长者吃了些香蕉..."));}
Youth.h
#pragma once#include "person.h"class CYouth : public CPerson{public: CYouth(void); ~CYouth(void);public: void Eat();};
Youth.cpp
#include "StdAfx.h"#include "Youth.h"CYouth::CYouth(void){}CYouth::~CYouth(void){}void CYouth::Eat(){ AfxMessageBox(_T("年青人吃了些苹果..."));}
Child.h
#pragma once#include "person.h"class CChild : public CPerson{public: CChild(void); ~CChild(void);public: void Eat();};
Child.cpp
#include "StdAfx.h"#include "Child.h"CChild::CChild(void){}CChild::~CChild(void){}void CChild::Eat(){ AfxMessageBox(_T("小家伙吃了些葡萄..."));}
4.添加消息响应事件
VirtualFunctionDemoDlg.h
public: afx_msg void OnBnClickedBtnPerson(); afx_msg void OnBnClickedBtnOld(); afx_msg void OnBnClickedBtnYouth(); afx_msg void OnBnClickedBtnChild();
VirtualFunctionDemoDlg.cpp
void CVirtualFunctionDemoDlg::OnBnClickedBtnPerson(){ //Person COld CYouth CChild CPerson* pPerson = NULL; pPerson = new CPerson; pPerson->Eat();}void CVirtualFunctionDemoDlg::OnBnClickedBtnOld(){ CPerson* pPerson = NULL; pPerson = new COld; pPerson->Eat();}void CVirtualFunctionDemoDlg::OnBnClickedBtnYouth(){ CPerson* pPerson = NULL; pPerson = new CYouth; pPerson->Eat();}void CVirtualFunctionDemoDlg::OnBnClickedBtnChild(){ CPerson* pPerson = NULL; pPerson = new CChild; pPerson->Eat();}
5.实现效果
对话框界面
点击基类指针按钮效果:person
点击派生类指针按钮效果:old
点击派生类指针按钮效果:youth
点击派生类指针按钮效果:child
好了,效果就演示到这儿了。
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标编程语言VC/MFC频道!
喜欢 | 0
不喜欢 | 0
您输入的评论内容中包含违禁敏感词
我知道了

请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号