C++设计模式-观察者模式

观察者模式”也可以称为通知者模式订阅-发布模式、模型-视图模式


 大致概念:一个主题(theme),多个观察者(observer)  收听它。

就好比 春节联欢晚会 (theme) ,全国观众(observer)观看现场直播。


那么我们怎样看直播呢?没有电视你看的成吗?有电视,但是没有全国直播,你看的成吗?

好了,这样说吧!  你作为一个观众,想看电视,家里安的都有"锅"吧,我指的是“数字电视村村通”。而且每年要交200块钱,是不?各个地方交的钱不一样,不管一样还是不一样,农村人民嘛,如果不交钱,我们的电视收不到信号,就看不成电视节目。

我们交钱的这个过程就是订阅的过程 ,到春节了,我们都能准时的收看 春节联欢晚会,说明他们给我们发布这个信息,发布直播了,这就是发布过程


从这里展开分析:

主题基类(SubjectBase):定义它是为了扩展更多的主题,实现多态

主题(subject):


观察者基类(ObserverBase):定义它是为了扩展更多种类的观察者,实现多态

观察者(Observer):


看看在主函数中的代码:


运行结果:

上面的内容我不想做过多的解释,这里涉及到C++的基本知识,因为过多的叙述,在这里写文章会花费很多的时间,由于我思考问题时,当我考虑的面不够的时候,以后的文章我会添加上还不完善的思路。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值