本文是B站教程的学习笔记。
原视频链接:UE5C++零基础全网全流程开发从入门到进阶教程合集
目录
单播委托
前置委托声明
注意:需要放到UCLASS()之前
格式:(返回值类型,委托的名字,参数类型)
变量声明
在.h文件中进行委托类型的变量声明。 注意这里的类型 是前置声明中的名字
定义要绑定的函数
注意函数的返回值和 入参要求 需要和自己计划绑定的委托 保持一致。否则后面绑定时会报错
函数实现
代理绑定
在构造函数中绑定, 在BeginPlay中执行。注意绑定的格式
执行结果:
多播委托
前置委托声明
多播代理没有带返回值的。
由于可以绑多个,所以这里声明2个委托。分别是无参和有1个参的
变量声明
定义要绑定的函数
函数实现
代理绑定
调用
执行结果:
动态多播委托
前置委托声明
格式:(委托名字,入参类型,入参变量名)注意:委托名字需要以大写F开头
注意:想要在蓝图中绑定,需要添加UPROPERTY宏 BlueprintAssignable
调用函数声明及实现
执行结果:
参考Actor中动态委托的定义
参考OnActorBeginOverlap的写法,可以看到:
-
声明委托时:命名是以F开头的。
-
委托变量添加了宏UPROPERTY(BlueprintAssignable)