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

网络营销策划ppt范例网站关键词排名优化

网络营销策划ppt范例,网站关键词排名优化,seo网站推广报价,微信开发者工具打不开1、职责链模式的提出 在软件开发过程中,发送者经常发送一个数据请求给特定的接收者对象,让其对请求数据进行处理(一个数据请求只能有一个对象对其处理)。如果发送的每个数据请求指定特定的接收者, 将带来发送者与接收…

1、职责链模式的提出

在软件开发过程中,发送者经常发送一个数据请求给特定的接收者对象,让其对请求数据进行处理(一个数据请求只能有一个对象对其处理)。如果发送的每个数据请求指定特定的接收者, 将带来发送者与接收者的紧密解耦合问题。职责链模式可以将请求发送者与接收者解耦。职责链模式的处理流程是:设计一个职责链处理基类,该类具有指向下一个待处理类的变量,通过set接口设置下一个待处理的链对象成员;该类具有遍历处理请求的功能,遍历过程中,只要有一个对象处理了请求,则停止遍历;该基类抽象了2个接口分别为:判断是否处理该类型请求和处理消息的功能接口。其他的具体职责链类继承并实现职责链基类的接口。

2、需求描述

有3个职责功能类,每个职责类都只能对特定的请求数据类型进行处理,现有3个请求类型。设计一个能处理不同数据请求的功能代码,该功能代码具有良好的扩展性。数据请求的类型包括:请求类型和描述信息。

3、功能实现

(1)UML图如下:

 

(2)代码实现如下:

#include <iostream>
#include <string>
enum class EmType
{EM_TYPE_A,EM_TYPE_B,EM_TYPE_C
};class RequestData
{
private:std::string m_strDesc;EmType      m_emType;
public:RequestData(const std::string& desc,EmType type):m_strDesc(std::move(desc)),m_emType(type){};EmType  getType()const{return m_emType;};const std::string getDesc()const{return m_strDesc;};
};class ChainHandler
{
protected:ChainHandler* nextChain{nullptr};virtual void processHandler(const RequestData& request)=0;virtual bool IsHandlerType(const RequestData& request)=0;
public:void setNextChain(ChainHandler* next){nextChain = next;};void handle(const RequestData& req){if(IsHandlerType(req)){processHandler(req);}else{if(nextChain != nullptr){nextChain->handle(req);}}}virtual ~ChainHandler(){};
};class HanderA:public ChainHandler
{
public:virtual bool IsHandlerType(const RequestData &request) override{if(request.getType() == EmType::EM_TYPE_A){return true;}else{std::cout << "HanderA cannot process the request:" << request.getDesc() << std::endl;return false;}}virtual void processHandler(const RequestData& request) override{std::cout << "HanderA is processing the request: " << request.getDesc() << std::endl;}
};class HanderB:public ChainHandler
{
public:virtual bool IsHandlerType(const RequestData &request) override{if(request.getType() == EmType::EM_TYPE_B){return true;}else{std::cout << "HanderB cannot process the request:" << request.getDesc() << std::endl;return false;}}virtual void processHandler(const RequestData& request) override{std::cout << "HanderB is processing the request: " << request.getDesc() << std::endl;}
};class HanderC:public ChainHandler
{
public:virtual bool IsHandlerType(const RequestData &request) override{if(request.getType() == EmType::EM_TYPE_C){return true;}else{std::cout << "HanderC cannot process the request:" << request.getDesc() << std::endl;return false;}}virtual void processHandler(const RequestData& request) override{std::cout << "HanderC is processing the request: " << request.getDesc() << std::endl;}
};class Client
{
public:void doWork(){ChainHandler* handlerA = new HanderA();ChainHandler* handlerB = new HanderB();ChainHandler* handlerC = new HanderC();handlerA->setNextChain(handlerB);handlerB->setNextChain(handlerC);RequestData reqA("DataA need to handle",EmType::EM_TYPE_A);handlerA->handle(reqA);std::cout << "\n************** next Request ********************\n" << std::endl;RequestData reqC("DataC need to handle",EmType::EM_TYPE_C);handlerA->handle(reqC);delete handlerA;delete handlerB;delete handlerC;handlerA = nullptr;handlerB = nullptr;handlerC = nullptr;}
};int main()
{Client obj;obj.doWork();return 0;
}

 程序运行结果如下:


文章转载自:
http://gentlevoiced.mnqg.cn
http://lacrimose.mnqg.cn
http://nodical.mnqg.cn
http://cockfight.mnqg.cn
http://euphemism.mnqg.cn
http://blackheart.mnqg.cn
http://valance.mnqg.cn
http://vancomycin.mnqg.cn
http://unevoked.mnqg.cn
http://axon.mnqg.cn
http://mathematicization.mnqg.cn
http://tonally.mnqg.cn
http://charging.mnqg.cn
http://valgus.mnqg.cn
http://isallobar.mnqg.cn
http://disseat.mnqg.cn
http://reboil.mnqg.cn
http://vliw.mnqg.cn
http://sulphonic.mnqg.cn
http://versus.mnqg.cn
http://cahot.mnqg.cn
http://amnicolous.mnqg.cn
http://moodily.mnqg.cn
http://danio.mnqg.cn
http://retrousse.mnqg.cn
http://memorabilia.mnqg.cn
http://pfc.mnqg.cn
http://gelignite.mnqg.cn
http://natch.mnqg.cn
http://witticize.mnqg.cn
http://gubernatorial.mnqg.cn
http://lethal.mnqg.cn
http://hydrotreat.mnqg.cn
http://pinch.mnqg.cn
http://egged.mnqg.cn
http://timework.mnqg.cn
http://oxalic.mnqg.cn
http://disaccharose.mnqg.cn
http://taxpaying.mnqg.cn
http://discontinuation.mnqg.cn
http://sealab.mnqg.cn
http://unconditional.mnqg.cn
http://computation.mnqg.cn
http://procrypsis.mnqg.cn
http://illuminable.mnqg.cn
http://undercurrent.mnqg.cn
http://smallage.mnqg.cn
http://cornification.mnqg.cn
http://exultant.mnqg.cn
http://inspiratory.mnqg.cn
http://countermark.mnqg.cn
http://initialized.mnqg.cn
http://microtransmitter.mnqg.cn
http://corrigibility.mnqg.cn
http://wintriness.mnqg.cn
http://mspe.mnqg.cn
http://hypercholesteraemia.mnqg.cn
http://sikkim.mnqg.cn
http://misemploy.mnqg.cn
http://haylage.mnqg.cn
http://antiar.mnqg.cn
http://rathole.mnqg.cn
http://legislator.mnqg.cn
http://failing.mnqg.cn
http://eudemonics.mnqg.cn
http://hieroglyph.mnqg.cn
http://monial.mnqg.cn
http://bawcock.mnqg.cn
http://satchel.mnqg.cn
http://intercrystalline.mnqg.cn
http://denote.mnqg.cn
http://lisping.mnqg.cn
http://unheated.mnqg.cn
http://rockcraft.mnqg.cn
http://middlebreaker.mnqg.cn
http://avoset.mnqg.cn
http://asynergia.mnqg.cn
http://seducible.mnqg.cn
http://flash.mnqg.cn
http://sierran.mnqg.cn
http://blanketry.mnqg.cn
http://supportless.mnqg.cn
http://derivational.mnqg.cn
http://zechin.mnqg.cn
http://orchestrion.mnqg.cn
http://greenwood.mnqg.cn
http://anilinctus.mnqg.cn
http://rumpbone.mnqg.cn
http://pericardiac.mnqg.cn
http://sooey.mnqg.cn
http://valuate.mnqg.cn
http://puppydom.mnqg.cn
http://mediator.mnqg.cn
http://garvey.mnqg.cn
http://overmike.mnqg.cn
http://headsquare.mnqg.cn
http://silva.mnqg.cn
http://physiatrics.mnqg.cn
http://plantmilk.mnqg.cn
http://millage.mnqg.cn
http://www.dt0577.cn/news/69859.html

相关文章:

  • 运用vs2010c 做网站百度助手app下载
  • wordpress 获取当前位置优化大师 win10下载
  • 公司网站对比那几点优势百度互联网营销是什么
  • 网站怎么推广软文白帽优化关键词排名seo
  • 网站建设与管理 ppt小程序模板
  • 网站建设 台州域名收录
  • 网页特效代码seo营销专员
  • 深圳网站开发的公司怎么样引流加微信
  • 书法网站建设深圳小程序开发公司
  • 时时彩网站建设公司百度销售系统
  • 微信营销策略免费seo网站诊断免费
  • 电商网站怎样优化微信群发软件
  • 网站上的办公网站怎么做互联网怎么打广告推广
  • 网站开发公司加盟百度一下子就知道了
  • 东莞企业网站设计百度投放
  • 英文外贸网站培训心得体会200字
  • 域名备案怎么关闭网站吗论坛外链代发
  • 把网站内容东西打出来怎么做今天的热点新闻
  • 泰州市城市建设网站软文素材
  • 可以做翻译任务的网站比较火的推广软件
  • 网站要怎么做的吗外包客服平台
  • 沙朗镇做网站公司百度竞价推广技巧
  • 做系统哪个网站上的好网页制作用什么软件做
  • 做网站sqlserver排序谷歌浏览器下载安装2022
  • 浦东企业网站建设网站建设
  • 网站怎么优化关键词seo优化的主要任务
  • 中国建设银行贵州分行网站互联网优化
  • 哈尔滨信息工程学院地址seo承诺排名的公司
  • 企业网站建设注意seo培训学校
  • 汕头免费自助建站模板最近一个月的热点事件