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

如何写网站建设策划案百度搜索指数1000是什么

如何写网站建设策划案,百度搜索指数1000是什么,网站上实用的h5特效,贵阳网站建设多少钱目录 观察者模式步骤例子:订阅博主UML图1:定义观察者接口2:定义被观察者接口3:创建具体观察者类4:创建具体被观察者类5:使用执行结果 观察者模式 观察者模式允许我们定义一种订阅机制,可在对象…

目录

    • 观察者模式
    • 步骤
    • 例子:订阅博主
      • UML图
      • 1:定义观察者接口
      • 2:定义被观察者接口
      • 3:创建具体观察者类
      • 4:创建具体被观察者类
      • 5:使用
      • 执行结果

观察者模式

观察者模式允许我们定义一种订阅机制,可在对象事件发生时通知所有的观察者对象,使它们能够自动更新。观察者模式还有另外一个名字叫做“发布-订阅”模式。

步骤

1:定义观察者接口
2:定义被观察者接口
3:创建具体观察者类
4:创建具体被观察者类
5:使用

例子:订阅博主

UML图

Inheritance
Inheritance
Composition
1
*
Association
1
1
Blogger
- list attach_list
+void attach(Observer* ob)
+void detach(Observer* ob)
+void notify(string msg)
Observer
- string m_name
- Blogger* m_blog
+Observer(string name, Blogger* blog)
+void unsubscribe()
+void update(string msg)
Zhanyun
+void notify(string msg)
Subscriber
+Subscriber(string name, Blogger* blog)
+void update(string msg)

1:定义观察者接口

// 订阅者
class Observer {
public:Observer(string name, Blogger* blog) : m_name(name), m_blog(blog) {m_blog->attach(this);}void unsubscribe() {m_blog->detach(this);}virtual void update(string msg) = 0;virtual ~Observer() {}
protected:string m_name;Blogger* m_blog;
};

2:定义被观察者接口

// 博主
class Blogger {
public:void attach(Observer* ob) {attach_list.push_back(ob);}void detach(Observer* ob) {attach_list.remove(ob);}virtual void notify(string msg) = 0;virtual ~Blogger() {}
protected:// 订阅者列表list<Observer*> attach_list;
};

3:创建具体观察者类

class Subscriber : public Observer {
public:using Observer::Observer;void update(string msg) override {cout << m_name << " 收到博客更新: " << msg << endl;}
};

4:创建具体被观察者类

// 博主 zhanyun
class Zhanyun : public Blogger {
public:void notify(string msg) override {cout << "博主 zhanyun 更新了博客,订阅者一共有<" << attach_list.size() << ">人" << endl;for (const auto& item : attach_list) {item->update(msg);}}
};

5:使用

int main() {Zhanyun* zhanyun = new Zhanyun;Subscriber* A = new Subscriber("A", zhanyun);Subscriber* B = new Subscriber("B", zhanyun);zhanyun->notify("zhanyun 发布了一篇关于观察者模式的博客文章。");delete A;delete B;delete zhanyun;return 0;
}

执行结果

博主 zhanyun 更新了博客,订阅者一共有<2>人
A 收到博客更新: zhanyun 发布了一篇关于观察者模式的博客文章。
B 收到博客更新: zhanyun 发布了一篇关于观察者模式的博客文章。

http://www.shuangfujiaoyu.com/news/57515.html

相关文章:

  • 网站seo搜索引擎优化怎么做优化大师好用吗
  • 山东裕达建设工程咨询有限公司网站网站推广投放
  • 网站建设中提示页面下载怎么优化网站排名
  • 大连市场所码二维码图片seo网上培训
  • 龙岩kk社区关键词优化是怎么弄的
  • 网站模板asp简单网页设计模板html
  • 做电子书网站 赚钱怎样创建网站或者网址
  • 国外做黄漫的网站有哪些网站推广途径和要点
  • app开发学习网站推广公司
  • amazon虚拟机免费做网站网络营销竞价推广
  • 被k掉的网站怎么做才能有收录推广优化网站
  • 做政府网站服务厦门seo公司到1火星
  • 如何做电商网站视频蜗牛精灵seo
  • 网站开发公司哪里好公司网站搭建
  • 免费做网站的营销型网站建设题库
  • 上海网站开发制作浙江网站推广公司
  • 网站外链坏处体验营销是什么
  • 网站备案的幕布是什么免费的网页制作软件
  • 嘉兴网站快照优化公司网站关键词在哪里看
  • 怎么做网站的ico最新的新闻 今天
  • 企业手机网站建设策划方案微信广告投放收费标准
  • wordpress破解插件seo外包
  • 做卖车网站需要什么手续费app推广渠道
  • 营销型网站的设计框架网站设计专业的公司
  • 设计学类专业性网站网络推广费用大概价格
  • 市体育局网站 两学一做新闻头条免费下载安装
  • 政府网站代码模板怎么优化一个网站关键词
  • 做考研政治真题的网站qq空间刷赞推广网站
  • asp.net 做网站好吗热搜榜百度
  • 做阿里巴巴小企业网站百度关键词排名原理