C++简单实现回调机制

本文介绍了一种使用C++通过多态来实现回调机制的方法,通过A和B两位先生的寒暄程序为例,详细解析了事件类、触发方A、驱使方B的实现以及主过程的作用,展示了如何在A打招呼后,B能立即回复的回调效果。文章还提供了代码示例和GitHub链接供读者参考。
摘要由CSDN通过智能技术生成

一、引言

在 C++ 开发过程中,经常会遇到需要一个类在遇到某种情况下(比如触发了一个行为等等)需要驱使另一类去做某些行为的需求(也就是回调机制)。

那么这个需求该如何实现呢?

这里我根据自己的经验,总结了一个巧妙又简单的使用多态的方法。

以下结合一个简单的例子,尽量将这个方法清晰的表达出来。

二、Demo:A 和 B 的寒暄程序

这里我们假定一个需求:

现在有两个人,一位是 A 先生,另一位是 B 先生。
现在要求当 A 先生给 B 先生打了招呼之后,B 先生立马回复 A,向 A 问好。

好了,现在需求就是这么简单,让我们分析下,这个需求涉及到了什么呢?我将这个过程抽象为三个类进行模拟:

角色 功能
A 向 B 打招呼
B 当 A 向自己打招呼,向 A 打招呼
主过程 世界的主宰,捏出了 A 和 B,控制着时空,提供 A 和 B 寒暄的一切外部条件

当我们看到上述的分析后,应该想到这么三个内容:

  1. A 的作用:A 在这里干了什么呢?他是触发一次回调行为的触发点,也就是因为 A 进行了打招呼的行为,才有了 B 的回复的行为。也就是说:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值