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

上海闵行区邮编seo网站怎么优化

上海闵行区邮编,seo网站怎么优化,wordpress调用当前文章标题,网站建设合同服务事项1、中介者模式的提出 在软件组件开发过程中#xff0c;如果存在多个对象#xff0c;且这些对象之间存在的相互交互的情况不是一一对应的情况#xff0c;这种功能组件间的对象引用关系比较复杂#xff0c;耦合度较高。如果有一些新的需求变化#xff0c;则不易扩展。中介者…1、中介者模式的提出 在软件组件开发过程中如果存在多个对象且这些对象之间存在的相互交互的情况不是一一对应的情况这种功能组件间的对象引用关系比较复杂耦合度较高。如果有一些新的需求变化则不易扩展。中介者模式可以解决这种问题。中介者模式使用一个“中介对象”去管理对象间的关联关系这个中介对象里面定义了对象间的数据统一交互接口解耦对象间的直接交互依赖从而提高代码的扩展性。 2、需求描述 有2个线上人员这两个线上人员可以相互发送和接收对象的消息。设计一个线上人员数据交互的代码且代码架构便于扩展。 3、中介者模式的代码实现 1UML图如下 2代码实现如下 #include iostream #include vectorclass Mediator; class OnlinerPeople { protected:Mediator* mediator; public:virtual void sendMsg(std::string msg)0;virtual void receiveMsg(std::string msg)0;virtual ~OnlinerPeople(){}; };class Mediator { protected:std::vectorOnlinerPeople*vecOnlinePeoples; public:virtual void sendMessage(std::string msg,OnlinerPeople* pepole)0;virtual void addOnliners(OnlinerPeople* people)0;virtual ~Mediator(){}; };class ConcreteMediator:public Mediator { public:void addOnliners(OnlinerPeople* people)override{vecOnlinePeoples.emplace_back(people);};virtual void sendMessage(std::string msg, OnlinerPeople *pepole) override{for(auto it vecOnlinePeoples.begin();it ! vecOnlinePeoples.end(); it){if( *it ! pepole){(*it)-receiveMsg(msg);}}} };class OnlinerPeople1:public OnlinerPeople { public:void Init(Mediator* mediator){this-mediator mediator;}virtual void sendMsg(std::string msg) override{std::cout OnlinerPeople1 sendMsg: std::endl;mediator-sendMessage(msg,this);}virtual void receiveMsg(std::string msg) override{std::cout OnlinerPeople1 receive msg: msg std::endl;} };class OnlinerPeople2:public OnlinerPeople { public:void Init(Mediator* mediator){this-mediator mediator;}virtual void sendMsg(std::string msg) override{std::cout OnlinerPeople2 sendMsg: std::endl;mediator-sendMessage(msg,this);}virtual void receiveMsg(std::string msg) override{std::cout OnlinerPeople2 receive msg: msg std::endl;} }; class Client { private:Mediator* mediator{nullptr};OnlinerPeople1 people1;OnlinerPeople2 people2; public:Client(Mediator* p){mediator p;people1.Init(mediator);people2.Init(mediator);};void DoWork(){mediator-addOnliners(people1);mediator-addOnliners(people2);people1.sendMsg(hello people2);people2.sendMsg(hello people1);}; };int main() {Mediator* mediator new ConcreteMediator();Client obj(mediator);obj.DoWork();delete mediator;mediator nullptr;return 0; }程序运行结果如下
http://www.dnsts.com.cn/news/276236.html

相关文章:

  • 网站一般多长时间北京建设厅官方网站
  • 名医工作室 网站建设十大室内设计师排名
  • dw建设网站如何加入音乐在线设计平台的优缺点
  • 中国网站建设公司图片企业邮箱注册申请费用
  • 织梦做的网站用什么数据库网站功能与内容设计的步骤
  • 做设计太依赖网站素材网站负责人照片
  • 免费的个人主页网页制作网站wordpress 前台用户
  • 网站开发swf素材公司想建个网站
  • .win域名做网站怎么样常州建设局考试网站
  • 简易网站的html代码网页设计与网站建设课程设计
  • 电商网站建设建站方案做衣服的网站推荐
  • 会网站建设怎样赚钱wordpress办公插件
  • 网站要求wordpress商城县属于哪个市
  • 快速建立平台网站开发aspcms网站使用教程
  • 游戏网站策划网站建设制作免费咨询
  • 企业网站建设方案如何西安网站优化排名案例
  • 手机p2p网站建设wordpress负载均衡上传附件
  • 网站建设技术架构和语言网站建设中源码编程同样重要
  • 高级网站建设费用泉州住房城乡建设局网站
  • 四川广汇建设有限公司网站昆明做网站哪家公司好
  • 西昌市做网站的公司上海app开发定制公司
  • 电子商务网站建设新闻怎么分析一个网站
  • 网站建设毕业设计总结环保行业网站建设
  • 专业营销型网站建设公司wordpress模板百度云
  • 凡科做网站有什么用室内设计学校在哪里
  • 网站建设外文版政策文件wordpress支持微信登录
  • 凡科网站源码下载上海招聘网 58同城
  • 网站数据修改教程网站被攻击会影响收录么
  • wordpress全站wordpress louie
  • 网站免费站wordpress伪静态cdn配置