当前位置: 首页 > news >正文

济南市建设工程招标网官网公司seo是指什么意思

济南市建设工程招标网官网,公司seo是指什么意思,便宜的营销型网站建设,线上销售平台有哪些一、前言 委托分单播和多播,多播就是可以绑定多个回调函数,然后一次性执行。这样也可以理解为啥多播没有返回值,多个回调函数执行后返回哪一个都是问题啊。而事件呢官方官方文档说法是“对于事件而言,只有定义事件的类才能调用 Br…

一、前言

        委托分单播和多播,多播就是可以绑定多个回调函数,然后一次性执行。这样也可以理解为啥多播没有返回值,多个回调函数执行后返回哪一个都是问题啊。而事件呢官方官方文档说法是“对于事件而言,只有定义事件的类才能调用 Broadcast() 函数”。这句话不是很理解,网上有解读是说事件的定义第一个参数就是类名,只有这个类可以调用后面的Broadcast() 函数,但我试了第一个参数是别的类也可以。

        使用的虚幻版本为5.2.1,VS版本为2022.

二、实现

        多播委托分为静态多播委托和动态多播委托,动态多播委托允许在蓝图中使用,静态不行。

2.1、静态多播委托

        首先定义一个静态多播委托,如下,第一个参数为委托的名称,第二个为参数类型。

//多播委托类声明
DECLARE_MULTICAST_DELEGATE_OneParam(MulDelegate_OneParam, FString);//带一个参数的

        然后,再声明委托的类型变量和绑定的方法

	//多播代理声明MulDelegate_OneParam MulDelegate_OneParam1;//多播委托绑定函数定义void MulDelegate_OneParamFunc1(FString strVal);void MulDelegate_OneParamFunc2(FString strVal);

        实现多播绑定函数,将读取到的信息打印到屏幕上。

void ADelegateActor::MulDelegate_OneParamFunc1(FString strVal)
{FString tempStr = strVal.Append("1");GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Blue, FString::Printf(TEXT("%s"), *tempStr));
}void ADelegateActor::MulDelegate_OneParamFunc2(FString strVal)
{FString tempStr = strVal.Append("2");GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Blue, FString::Printf(TEXT("%s"), *tempStr));
}

        绑定和执行

	//多播代理的绑定MulDelegate_OneParam1.AddUObject(this, &ADelegateActor::MulDelegate_OneParamFunc1);MulDelegate_OneParam1.AddUObject(this, &ADelegateActor::MulDelegate_OneParamFunc2);多播代理执行MulDelegate_OneParam1.Broadcast("MulDelegate");

其他的方法可以参考单播委托的调用和使用。

2.2、动态多播委托

        动态多播的声明,注意:名称一定要F开头不然会编译报错“Delegate type declarations must start with F”。

//动态多播委托,区别在于它可以暴露给蓝图,在蓝图中进行事件的绑定
DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FDynamicMulDelegate, FString, param);//一个参数的动态多播委托,名称一定要F开头不然会编译报错“Delegate type declarations must start with F”

动态多播的变量声明,要让蓝图中调用因此需要“UPROPERTY”标签。

	//动态多播代理变量声明UPROPERTY(BlueprintAssignable)//可以让代理在蓝图中进行绑定FDynamicMulDelegate DynamicMulDelegate;

        编译代码成功后,在编辑器中创建动态多播类的蓝图,然后在蓝图中输入上述定义的变量名点击“分配DynamicMulDelegate",这样就能创建一个带绑定的自定义蓝图事件,如图2.2.1所示,然后在开始函数时执行动态绑定。

图2.2.1

调用还是再C++代码中

	动态多播代理执行DynamicMulDelegate.Broadcast("Dynamic Mul Cast");
2.3、事件

事件的声明,第一个参数是类名,我这里使用了其他的原始C++类(不继承任何虚幻类的类),第二个参数为事件的名称,第三个为参数类型。

//事件声明
DECLARE_EVENT_OneParam(MyRawClass, MyActionEvent1, FString);

定义事件的变量

	//事件变量MyActionEvent1 ActionEvent;

事件的绑定和执行

	ActionEvent.AddUObject(this, &ADelegateActor::OneParamDelegateFunc);ActionEvent.Broadcast("Event Call");

三、总结

3.1、动态多播委托的第一个参数名称必须以”F“开头,否则会编译报错。

3.2、事件和委托目前还未发现有什么不同之处,我定义事件时第一个参数为原始C++类,调用的时候在别的类也可以执行,跟官方说的不太一致。

http://www.wangmingla.cn/news/96969.html

相关文章:

  • 深圳网站建设工作国外seo大神
  • 网易对象存储wordpress广州宣布5条优化措施
  • 绍兴注册公司快速优化系统
  • 唐河企业网站制作价格螺蛳粉营销策划方案
  • 购物网站开发论文可行性分析百度搜索量最大的关键词
  • wordpress并发关键词优化的原则
  • 长沙网站制作哪家好seo营销推广
  • 怎么做个手机版的网站最新一周新闻
  • 网站开发是先做前段还是后台专业推广引流团队
  • 做ppt的模板网站有哪些百分百营销软件官网
  • 更合公司网站建设滕州seo
  • 主流的网站开发技术湖南正规关键词优化
  • dede网站优化宁海关键词优化怎么优化
  • 临沂做网站设计的公司山东工艺美术学院网站建设公司
  • 一个主机怎么做两个网站网站seo置顶 乐云践新专家
  • 医院网站建设论证报告南京网站制作
  • 顺德网站建google安卓手机下载
  • wordpress 侧边栏修改百度优化教程
  • 用mvc做网站的缺点谁有恶意点击软件
  • 购物网站开发公司营销策略有哪些方法
  • 哪个网站的前台背景墙做的好如何创建网址
  • php网站开发实例教材百度搜索引擎原理
  • 嘉兴网站优化微信营销方法
  • 购物网站后台模板下载推广app赚佣金
  • 广州网站建设报价郑州seo顾问培训
  • 怎么做分享连接的网站网上店铺的推广方法有哪些
  • 国外设计师作品网站app推广平台有哪些
  • 广州技术支持 网站建设电脑培训班电脑培训学校
  • 网站建设需求确定网站推广如何引流
  • 刚做的网站搜全名查不到成都计算机培训机构排名前十