当前位置: 首页 > wzjs >正文

免费网络咨询免费建站银川怎么做网站

免费网络咨询免费建站,银川怎么做网站,刷移动端seo软件,三端互通的传奇手游打金概念 模版模式是设计模式行为模式的一种,它的核心思想是定义一个算法骨架,将某些步骤提取到到子类中实现。解决当项目中出现多个处理分支,这几个处理分支有重复步骤的时实现代码的复用和扩展。在这种模式下不用修改逻辑结构,使用…

概念

模版模式是设计模式行为模式的一种,它的核心思想是定义一个算法骨架,将某些步骤提取到到子类中实现。解决当项目中出现多个处理分支,这几个处理分支有重复步骤的时实现代码的复用和扩展。在这种模式下不用修改逻辑结构,使用继承机制中的子类来实现算法不同部分的处理逻辑。

适用场景

1、固定流程,可变步骤:当只向客户端定义一个特定的算法步骤的时候,方便子类能对其进行扩展,同时保证算法结构不变,可使用此算法。

2、代码复用:当多个类的算法除了一些细微的不同,其他处理逻辑一样的时候,为了去除重复代码就可以使用此模式将不同之处在子类中实现。

创建方式

1、分析当前业务逻辑,梳理出算法中的重复逻辑和不同逻辑,并将其抽出到一个类(超类)中。在此类中创建一个函数实现算法的处理步骤。将需要继承在子类中代码函数设置为虚函数。

2、实现所有需要单独处理的子类,并继承超类。在子类中实现需要单独处理的算法逻辑(实现在超类的虚函数上)。

3、完成以上步骤之后在客户端创需要执行的算法类,并调用超类中的算法接口即可完成。

类关系图

在这里插入图片描述

示例代码

#include "MoBanMoShi.h"
int main()
{std::cout << "欢迎东哥来到设计模式的世界!\n";Manner1* manner1 = new Manner1();manner1->algorithm();cout << "==========================" << endl;Manner2* manner2 = new Manner2();manner2->algorithm();
}
#pragma once
#include <iostream>
#include <string>using namespace std;
//超类
class MainInterface
{
public:MainInterface() { }~MainInterface() {}void algorithm() {step1();step2();step3();step4();}void step1() {cout << "步骤1:通用步骤" << endl;}virtual void step2() {}virtual void step3() {}void step4() {cout << "步骤4:通用步骤" << endl;}};//具体算法步骤实现
class Manner1 : public MainInterface {
public:Manner1() {}~Manner1() {}void step2() {cout << "步骤2:Manner1 步骤" << endl;}void step3() {cout << "步骤3:Manner1 步骤" << endl;}
};	//具体算法步骤实现
class Manner2 : public MainInterface {
public:Manner2() {}~Manner2() {}void step2() {cout << "步骤2:Manner2 步骤" << endl;}void step3() {cout << "步骤3:Manner2 步骤" << endl;}
};
欢迎东哥来到设计模式的世界!
步骤1:通用步骤
步骤2:Manner1 步骤
步骤3:Manner1 步骤
步骤4:通用步骤
==========================
步骤1:通用步骤
步骤2:Manner2 步骤
步骤3:Manner2 步骤
步骤4:通用步骤

文章转载自:

http://ypkJ6Vtp.zpkfb.cn
http://g83WqFy9.zpkfb.cn
http://7R7TTGK4.zpkfb.cn
http://4ldeeQKt.zpkfb.cn
http://tdGKcFGa.zpkfb.cn
http://BoGzvJhq.zpkfb.cn
http://hIfLq0Lz.zpkfb.cn
http://Q92YmZvj.zpkfb.cn
http://IGXREJeK.zpkfb.cn
http://4Lb5XcJI.zpkfb.cn
http://iIWS2BLH.zpkfb.cn
http://JNTb7jKp.zpkfb.cn
http://FPJUp882.zpkfb.cn
http://zUHjnvI9.zpkfb.cn
http://UZOy3vOL.zpkfb.cn
http://KlUjHy2U.zpkfb.cn
http://GLVHkPZD.zpkfb.cn
http://iOcfrnIf.zpkfb.cn
http://odh7KAg5.zpkfb.cn
http://S5aW2QPc.zpkfb.cn
http://Waj084Qh.zpkfb.cn
http://4Hbc0MBX.zpkfb.cn
http://loyDFKmY.zpkfb.cn
http://xsvZON8K.zpkfb.cn
http://HvzeH8xu.zpkfb.cn
http://vyirE9TY.zpkfb.cn
http://uwON9y7y.zpkfb.cn
http://wMILWaxI.zpkfb.cn
http://nCNuaLZ6.zpkfb.cn
http://B4IVkNXU.zpkfb.cn
http://www.dtcms.com/wzjs/681718.html

相关文章:

  • 网站的外链是什么关于网站建设的通知
  • 西安建站平台哪个好免费做网站有哪些
  • 莆田外贸建站互联网平台排名
  • 中文搜索引擎vue seo 优化方案
  • 电商网站的银行支付接入该怎么做免费虚拟主机代理
  • 建设门户网站所需绍兴市建设银行网站
  • 论企业网站建设的必要性物联网平台层
  • 建设工程评标专家在哪个网站登录网站制作的相关术语有哪些
  • 什么是h5网站福州的网站建设
  • 杭州做网站哪家便宜建行网上银行登录入口官网
  • 河南省住房和城乡建设厅网站首页外贸营销网站建设介绍
  • 网站建设咨询服务合同三亚门户网站
  • linux做网站教程北京网站优化效果怎样
  • 网站开发项目的部署男女做恩爱视频网站
  • 梅州建站网络有限公司昆明网站服务器
  • 做外贸网站用什么软件现在那个网站做宣传有效果
  • 太原做网站软件h5游戏大全在线玩
  • 成功的门户网站店铺代运营服务
  • 网站视频播放器用什么做的推广网站有那些
  • 衡水做网站公司网站建设设计思想
  • 沈阳建站公司模板wordpress首页错误
  • 推荐响应式网站建设天津大邱庄网站建设公司
  • 北京城乡建设部网站首页前端开发兼职的未来发展
  • 有哪些专门做校企合作的网站网站怎么建设商城
  • jquery 的网站模板鄂州网站建设哪家好
  • 用自己的电脑建设网站美橙网站维护
  • 建设银行网站连不上wordpress 技术教程
  • 重庆网站开发服务小程序后台
  • 建设网站收费标准一流的嘉兴网站建设
  • 专业做企业活动的趴网站重庆开县网站建设公司推荐