过年做那些网站致富,wordpress指定分类文章作者时间,做外贸网站的价格,网站为什么网页打不开怎么办目录 0 引言1 函数指针模拟多播委托 #x1f64b;♂️ 作者#xff1a;海码007#x1f4dc; 专栏#xff1a;UE虚幻引擎专栏#x1f4a5; 标题#xff1a;【UE 委托】如何利用函数指针理解委托的基本原理❣️ 寄语#xff1a;书到用时方恨少#xff0c;事非经过不知难… 目录 0 引言1 函数指针模拟多播委托 ♂️ 作者海码007 专栏UE虚幻引擎专栏 标题【UE 委托】如何利用函数指针理解委托的基本原理❣️ 寄语书到用时方恨少事非经过不知难 最后文章作者技术和水平有限如果文中出现错误希望大家能指正同时有问题的话欢迎大家留言讨论。 0 引言
今天在学习函数指针的时候想到了委托实现的基本原理接下来简单的复现一下。
1 函数指针模拟多播委托
首先使用typedef定义了一种类型的函数指针。然后创建以绑定委托的函数集合 Slots。然后在委托调用时遍历 Slots 集合依次调用绑定的消息函数。
代码如下
#include iostream
#include vectorusing namespace std;typedef void (*SlotPtr) ();
vectorSlotPtr Slots;void Delegate()
{// 发出广播cout Call Delegate endl;for (auto Slot : Slots){Slot();}
}void Slot1()
{cout Slot1 endl;
}void Slot2()
{cout Slot2 endl;
}int main()
{// 模拟绑定过程Slots.emplace_back(Slot1);Slots.emplace_back(Slot2);// 模拟广播Delegate();return 0;
}