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

淮南网站优化公司建立网站英文

淮南网站优化公司,建立网站英文,百度小说搜索排行榜,中国公共信息服务平台解释说明#xff1a;命令模式#xff08;Command Pattern#xff09;是一种数据驱动的设计模式#xff0c;它属于行为型模式。请求以命令的形式包裹在对象中#xff0c;并传递给调用对象。调用对象寻找可以处理该命令的合适对象#xff0c;并把该命令传给相应的对象…解释说明命令模式Command Pattern是一种数据驱动的设计模式它属于行为型模式。请求以命令的形式包裹在对象中并传递给调用对象。调用对象寻找可以处理该命令的合适对象并把该命令传给相应的对象该对象执行命令。 命令抽象类Command定义命令的接口声明执行的方法。 具体命令ConcreteCommand命令接口实现对象是“虚”的实现通常会持有接收者并调用接收者的功能来完成命令要执行的操作。 实现者/接收者Receiver接收者真正执行命令的对象。任何类都可能成为一个接收者只要它能够实现命令要求实现的相应功能。 调用者/请求者Invoker要求命令对象执行请求通常会持有命令对象可以持有很多的命令对象。这个是客户端真正触发命令并要求命令执行相应操作的地方也就是说相当于使用命令对象的入口。 command.h #pragma once class Command { public://每个命令类都必须有一个执行命令的方法virtual void execute() 0; }; receiver.h #pragma once class Receiver { public://抽象接收者 定义每个接收者都必须完成的业务virtual ~Receiver() { }virtual void doSomething() 0; }; concreteCommand.h #pragma once #include command.h #include receiver.h #include iostream class ConcreteCommand1 :public Command { private:Receiver* m_pReceiver;//哪个Receiver类进行命令处理 public://构造函数传递接收者ConcreteCommand1(Receiver* receiver){m_pReceiver receiver;}//必须实现一个命令void execute(){//业务处理std::cout command1 run std::endl;m_pReceiver-doSomething();} }; class ConcreteCommand2 : public Command { private:Receiver* m_pReceiver; public:ConcreteCommand2(Receiver* receiver){m_pReceiver receiver;}void execute(){std::cout command2 run std::endl;m_pReceiver-doSomething();} }; concreteReciver.h #pragma once #include receiver.h #include iostream class ConcreteReciver1 : public Receiver {//每个接收者都必须处理一定的业务逻辑 public:void doSomething(){std::cout Reciver1 doing std::endl;} }; class ConcreteReciver2 : public Receiver {//每个接收者都必须处理一定的业务逻辑 public:void doSomething(){std::cout Reciver2 doing std::endl;} }; invoker.h #pragma once #include command.h #include iostream class Invoker { private:Command* m_pCommand; public://接受命令void setCommand(Command* command){m_pCommand command;std::cout invoker add command std::endl;}//执行命令void action(){m_pCommand-execute();std::cout invoker action command std::endl;} }; main.cpp #include concreteCommand.h #include concreteReciver.h #include invoker.h int main() {//首先声明调用者InvokerInvoker* invoker new Invoker();//定义接收者Receiver* receiver new ConcreteReciver1();Receiver* receiver2 new ConcreteReciver2();//定义一个发送给接收者的命令Command* command new ConcreteCommand1(receiver);Command* command2 new ConcreteCommand2(receiver);Command* command3 new ConcreteCommand1(receiver2);Command* command4 new ConcreteCommand2(receiver2);//把命令交给调用者去执行invoker-setCommand(command);invoker-action();invoker-setCommand(command2);invoker-action();invoker-setCommand(command3);invoker-action();invoker-setCommand(command4);invoker-action();system(pause);return 0; }
http://www.dnsts.com.cn/news/279496.html

相关文章:

  • cms网站系统广东建设信息网三库一
  • 设计培训网站建设网站开发定制案例展示
  • 网站建设超链接制作数据库怎么存储wordpress
  • gta5单机买房子网站在建设网站设计与网页配色实例精讲pdf
  • 录音转文字网站开发励志故事网站源码
  • 网站设计设美业o2o平台有哪些
  • 网站建设与制作教程北华大学企业广告平面设计多少钱
  • 网站域名续费泰安房产信息网网签查询
  • 中国最大的免费素材网站免费自取ppt模板
  • 北京网站优化推广分析网站审核时间
  • ui设计较好的网站网站上线倒计时html5模板
  • 一个网站占空间有多少g个人备案网站做商业
  • 福州网站建设需要多少钱站长工具查询ip地址
  • 科普网站建设的支持力度广州市开发区建设局官方网站
  • 建设厅证各省网站都可以查吗做彩票网站要多少钱
  • 上海企业网站开发免费推广方案
  • 东莞网站设计智联招聘网站怎么做微招聘信息
  • 广州比较好的网站建设企业深圳做app网站的公司
  • 英文网站建设390合肥建设企业网站
  • 薛城网站建设谷德设计网gooood
  • 做网站备案需要多长时间厦门论坛网站建设
  • Wordpress外贸网站搭建公司手机上怎么制作app
  • 最好的网站建设机构视频剪辑找什么公司
  • 移动商城网站开发淮南做网站
  • 阿里云里面网站建设北京市建设工程交易服务中心网站
  • 聊城网站建设费用wordpress 查看菜单
  • 怎么发布网站9377将军传奇
  • 模仿网站 素材哪里来台州品牌网站建设
  • 英语网站建设费用wordpress增加快捷便签快捷文字
  • 外贸网站推广的方法工作流程管理系统说明书