虚幻引擎:代理

一、代理类型 

1.单薄代理

        特点:允许有返回值,允许有参数,只可以一对一的传递消息就算绑定多个,但是总会被最后一个覆盖

2.多播代理

 

        特点:不允许有返回值,允许有参数允许一对多传递消息

3.动态代理        

        特点:声明的类型必须以F开头,结尾必须加分号 只能绑定在UFUNCITION标记的函数上

        单播 可以作为参数通过蓝图传递

 

         多播 不允许作为参数通过蓝图传递

        

二、代理的使用

以单播为例

 

//声明代理对象
DECLARE_DELEGATE(DelCBo1)
//创建代理对象
DelCBo1 Enevnt;
//绑定代理对象:在需要使用的地方绑定

代理存在组件->Enevnt.AddUObject(this,&UPackageUserWidget::AddItem);
 解除绑定  代理存在组件->OnAddItemToPackage.UnBind(this);

//执行代理回调
if(Enevnt.IsBound())
{
	Enevnt.Execute(temp);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ling…

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值