C++ 虚函数与多态

语法上,在成员函数前加上virtual 关键字,就成了虚函数

非虚函数:不希望子类重新定义(覆写override)父类的函数

虚函数:希望派生类覆写父类,且父类已经对该函数有定义

纯虚函数:希望子类一定要覆写父类该函数,父类中没有定义该函数(只是声明)

Template Method(设计模式-模板模式)

定义一个操作中算法的骨架,而将一些操作延迟到子类中。TemplateMethod使得子类可以不改变一个算法的结构,即可重定义该算法的某些特定步骤。(GOF: 《设计模式》)

父类CDocument中的OnFileOpen函数会调用Serialize(),而Serialize(),在父类中是虚函数,具体实现根据子类CMyDoc中覆写的Serialize()实现。

相关推荐
Go away, devil20 分钟前
Java-----集合
java·开发语言
VBA63372 小时前
VBA即用型代码手册:利用函数保存为PDF文件UseFunctionSaveAsPDF
开发语言
say_fall2 小时前
C语言编程实战:每日刷题 - day2
c语言·开发语言·学习
上去我就QWER3 小时前
Qt快捷键“魔法师”:QKeySequence
开发语言·c++·qt
Pluto_CSND5 小时前
Java中的静态代理与动态代理(Proxy.newProxyInstance)
java·开发语言
将编程培养成爱好6 小时前
C++ 设计模式《外卖骑手状态系统》
c++·ui·设计模式·状态模式
猿太极6 小时前
设计模式学习(3)-行为型模式
c++·设计模式
惊讶的猫7 小时前
LSTM论文解读
开发语言·python
獨枭8 小时前
C# 本地项目引用失效与恢复全攻略
开发语言·c#·visual studio
随意起个昵称8 小时前
【递归】二进制字符串中的第K位
c++·算法