观察者模式——C++实现

观察者模式定义了一对多的依赖关系,当被观察的对象状态改变时,所有观察者都会得到通知并自动更新。例如,班级里班长监视老师到来,通知看小说的同学。在VS软件中,点击运行后的各种响应也是观察者模式的应用。本文通过C++代码示例,展示了如何实现观察者模式,涉及继承、抽象类、纯虚函数和动态绑定等概念。
摘要由CSDN通过智能技术生成

定义:

    观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个通知对象。当这个通知对象状态发生改变时,会告知它的所有观察者对象自动更新,进而做出相应的反映。

举个例子:

    在一个班级里,自习课的时候我们偷偷看小说,这时候又很害怕老师突然来了,于是我们总是让坐窗户边没有看小说也没看书的班长替我们看着,老师来了就通知我们这些看小说的同学。然后我们就赶紧收起小说,假装在认真学习的样子。这就相当于是一个观察者模式,其中,班长相当于通知者,我们这些看小说的同学相当于是观察者,班长(通知者)发现老师来了,就通知我们(观察者)所有看小说的人,然后我们分别执行自己的处理方法(藏小说、或者扔给同桌)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值