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

做的网站没流量吗怎么请专业拓客团队

做的网站没流量吗,怎么请专业拓客团队,电子商务网站建设技术规范,psd做成网站观察者模式是一种行为型设计模式,用于定义对象间的一种一对多的依赖关系,使得当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并自动更新。 观察者模式涉及以下几个角色: 主题(Subject)&…

观察者模式是一种行为型设计模式,用于定义对象间的一种一对多的依赖关系,使得当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并自动更新。

观察者模式涉及以下几个角色:

  1. 主题(Subject):也称为被观察者或可观察对象,它维护一系列依赖于它的观察者对象,并提供添加、删除和通知观察者的方法。
  2. 观察者(Observer):定义了一个更新接口,以便在主题状态发生改变时接收通知。
  3. 具体主题(Concrete Subject):实现了主题接口,负责维护观察者列表以及状态变化时通知观察者。
  4. 具体观察者(Concrete Observer):实现了观察者接口,在接收到主题通知时进行相应的更新操作。

观察者模式的核心思想是解耦主题和观察者,使得它们可以独立地变化。主题不需要知道观察者的具体类型和数量,只需要维护一个观察者列表,并在状态变化时通知这些观察者即可。这种松耦合的设计使得系统更加灵活和可扩展。

#include <iostream>
#include <string>
#include <memory>
#include <unordered_map>
#include <list>
using namespace std;/*
行为型模式:主要关注的是对象之间的通信。
观察者-监听者模式(发布-订阅模式)设计模式:主要关注的是对象的一对多的关系,也就是多个对象
都依赖一个对象,当该对象的状态发生改变时,其它对象都能够接收到相应的通知。一组数据(对象) -》通过这一组数据-》 曲线图(对象1)/柱状图(对象2)/圆饼图(对象3)
当数据对象改变时,对象1、对象2、对象3应该及时的收到相应的通知!Observer1   Observer2   Observer3Subject(主题) 主题有更改,应该及时通知相应的观察者,去处理相应的事件
*/
class Observer // 观察者抽象类
{
public:// 处理消息的接口virtual void handle(int msgid) = 0;
};// 第一个观察者实例
class Observer1 : public Observer
{
public:void handle(int msgid){switch (msgid){case 1:cout << "Observer1 recv 1 msg!" << endl;break;default:break;}}
};// 第二个观察者实例
class Observer2 : public Observer
{
public:void handle(int msgid){switch (msgid){case 2:cout << "Observer2 recv 2 msg!" << endl;break;default:break;}}
};// 第三个观察者实例
class Observer3 : public Observer
{
public:void handle(int msgid){switch (msgid){case 1:cout << "Observer3 recv 1 msg!" << endl;break;case 2:cout << "Observer3 recv 2 msg!" << endl;break;case 3:cout << "Observer3 recv 3 msg!" << endl;break;default:break;}}
};class Subject // 主题抽象类
{
public:void addObserver(Observer* observer,int msgid){_subMap[msgid].push_back(observer);/*auto it = _subMap.find(msgid);if(it!=_subMap.end()){it->second.push_back(observer);}else{list<Observer*> li;li.push_back(observer);_subMap.insert({msgid,li});}*/}//主题检测发生改变,通知相应的观察者对象处理事件void dispatch(int msg){auto it = _subMap.find(msg);if(it!=_subMap.end()){for(Observer *obs : it->second){obs->handle(msg);}}}private:unordered_map<int,list<Observer*>> _subMap;
};int main()
{Subject sub;Observer *p1 = new Observer1();Observer *p2 = new Observer2();Observer *p3 = new Observer3();sub.addObserver(p1,1);sub.addObserver(p2,2);sub.addObserver(p3,1);sub.addObserver(p3,2);sub.addObserver(p3,3);int msgid = 0;for(;;){cout<<"输入消息id:";cin>>msgid;if(msgid==-1)break;sub.dispatch(msgid);}return 0;
}

http://www.khdw.cn/news/41792.html

相关文章:

  • 网站生成word网络营销做的好的企业
  • 制造行业网站建设市场营销策划方案范文
  • 武汉中建广场做网站的公司有哪些什么推广平台比较好
  • 深圳购物网站建设seo成都培训
  • 传动设备 技术支持 东莞网站建设web设计一个简单网页
  • 虚拟主机怎么做网站企业网页
  • 网站建设整改情况优化seo可以从以下几个方面进行
  • 工作室网站域名易观数据
  • 快速做彩平图得网站发软文
  • wordpress 重写seo营销网站的设计标准
  • 家政服务网站建设关键词搜索排名工具
  • 网站不备案可以做百度竞价吗100个常用的关键词
  • 建设电影会员网站首页网络广告营销经典案例
  • 做网站标配互联网营销推广渠道
  • 网站怎么做定时任务短链接生成网址
  • 为什么有的网站打不开怎样做好服务营销
  • 美容美发网站建设方案潍坊seo建站
  • 网站导航是什么电商运营培训课程有哪些
  • 合肥建网站的公司公司企业网站模板
  • 中国万网怎么自己做网站windows优化大师免费版
  • 网站自然排名怎么优化seo网站优化方
  • 四川省住房和城乡建设厅考试报名seo网站内部优化方案
  • 武汉做网站开发的公司百度热搜榜历史
  • 手机之家中关村朝阳seo排名
  • 潮阳发布最新通告优化大师哪个好
  • 想网上卖家具怎么做网站广州市口碑seo推广外包
  • wordpress能连115seo网络推广方法
  • 网站建站服务的公司传媒公司
  • 别人做的网站百度网站验证百度智能建站平台
  • 网页设计建网站流程营销软件排名