C++ 虚函数与多态

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

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

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

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

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

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

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

相关推荐
Little At Air11 分钟前
C++之红黑树
开发语言
捕鲸叉34 分钟前
GOF设计模式中各模式支持的可变方面(封装变化)
c++·设计模式
fpcc38 分钟前
跟我学C++中级篇——Design Patterns的通俗说法
c++·设计模式
yangmc041 小时前
判断子序列
开发语言·数据结构·c++·算法·矩阵·图论
席万里1 小时前
C++图案例大全
数据结构·c++·算法
昇腾CANN1 小时前
Ascend C算子性能优化实用技巧05——API使用优化
c语言·开发语言·性能优化
y25081 小时前
《抽象类和接口》
java·开发语言
沐泽Mu1 小时前
嵌入式学习-C嘎嘎-Day03
c语言·开发语言·c++·学习
yyycqupt2 小时前
多路转接之poll
服务器·c++·后端·网络协议
chunmiao30322 小时前
自建k8s集群,利用开源的GitLab、Jenkins和Harbor实现CI/CD和DevOps的过程回顾
java·开发语言