我是靠谱客的博主 怕孤单酒窝,最近开发中收集的这篇文章主要介绍3_2 TemplateMethodMode 模板方法模式,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

// 定义:定义一个操作中的算法框架,将一些步骤延迟到子类中实现
//
// 模式举例:去下馆子吃饭,分为点单,吃什么,厨师注意,买单
//        等事项,其中点单和买单是固定的,吃什么和厨师注
//        意什么灵活多变
//	
// 模式实战经验:网络封包的串行化和反串行化
//	
//

#include<iostream>
using namespace std;

class ChiFan
{
public:
  void XiaGuanZi()
  {
  	dianDan();
  	chiDongXi();
  	zhuYiShiXiang();
  	maiDan();
  }

protected:
  //公用方法,在基类中实现非虚函数
  void dianDan()
  {
  	cout <<"叫服务员,点单"<<endl;
  }
  
  //纯虚函数,子类必须实现
  virtual void chiDongXi()=0;
  
  //钩子方法,可重写,可不重写,虚函数
  virtual void zhuYiShiXiang(){}
  
  void maiDan()
  {
  	cout <<"叫服务员,买单"<<endl;
  }
};

//吃面条
class ChiMian : public ChiFan
{
protected:
  virtual void chiDongXi()
  {
  	cout <<"来碗面条"<<endl;
  }
  virtual void zhuYiShiXiang()
  {
  	cout <<"面条多放辣子"<<endl;
  }
};

//吃川菜
class ChiChuanCai : public ChiFan
{
protected:
  virtual void chiDongXi()
  {
  	cout <<"上川菜"<<endl;
  }
  virtual void zhuYiShiXiang()
  {
  	cout <<"做菜不要放香菜"<<endl;
  }
};

int main()
{
  ChiFan * chifan = new ChiMian();
  chifan->XiaGuanZi();
  return 0;
}
    
    

 

最后

以上就是怕孤单酒窝为你收集整理的3_2 TemplateMethodMode 模板方法模式的全部内容,希望文章能够帮你解决3_2 TemplateMethodMode 模板方法模式所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部