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

wordpress检验上传的文档seo知识分享

wordpress检验上传的文档,seo知识分享,如何做线下推广,城市联盟网站怎么做一、前言 除了上一章C变量与蓝图通信讲的变量能与蓝图通信外,还有函数和枚举也可以和蓝图通信。函数的关键字为”UFUNCTION“、枚举的关键字为”UENUM“。 二、实现 2.1、BlueprintCallable蓝图中调用 该函数时带执行的,带入如下。编译成功后在蓝图中输…

一、前言

        除了上一章C++变量与蓝图通信讲的变量能与蓝图通信外,还有函数和枚举也可以和蓝图通信。函数的关键字为”UFUNCTION“、枚举的关键字为”UENUM“。

二、实现

2.1、BlueprintCallable蓝图中调用

  该函数时带执行的,带入如下。编译成功后在蓝图中输入后可以找到,并点击使用如图2.1.1所示

	/// <summary>/// 暴露该函数可在蓝图中调用/// </summary>UFUNCTION(BlueprintCallable, Category = "MyFunction")void BlueprintCallable1();
图2.1.1

2.2、BlueprintPure蓝图中的纯函数

        代码如下,其在蓝图中的形式如图2.2.1所示,它是一个纯函数和图2.1.1不同的是它没有左右

	/// <summary>/// 可在蓝图中调用的纯函数的定义/// </summary>UFUNCTION(BlueprintPure, Category = "MyFunction")bool BlueprintPure2();
图2.2.1

两边的执行引脚。

2.3、BlueprintImplementableEvent

        在C++中声明蓝图中实现,在蓝图中可重载,可以有参数和返回值,无返回值的是事件,有返回值的是函数。

1、没有返回值和参数

        定义的代码如下所示,

	UFUNCTION(BlueprintImplementableEvent)void ImplementableEvent1();

然后在蓝图中它会作为事件添加到蓝图中使用,如图2.3.1所示:

图2.3.1

该事件可以在C++代码中调用

void AMyPawn1::BeginPlay()
{Super::BeginPlay();ImplementableEvent1();
}

2、只有返回值

只有返回值的在蓝图中会作为函数,如图2.3.2所示,同时这个函数可以在蓝图中被重写

	UFUNCTION(BlueprintImplementableEvent)int32 ImplementableEvent2();
图2.3.2

但是在蓝图还无法调用它,需要添加”Blueprint Callable“关键字,如下代码,注意两个关键字的顺

图2.3.3
	UFUNCTION(BlueprintCallable, BlueprintImplementableEvent)int32 ImplementableEvent2();

序,如果把Blueprint Callable“关键字放在后面编译不通过。增加关键字后的蓝图中可以调用,如图2.3.4所示:

图2.3.4

3、只有参数

代码如下所示,添加一个带参数的,这个效果和图2.3.1中的类似,不同之处是这里会带参数,如图2.3.4所示:

	UFUNCTION(BlueprintImplementableEvent)void ImplementableEvent3(const FString& myStr);
图2.3.4

4、参数和返回值都有

代码如下所示,其效果和图2.3.2所示类似,区别之处在于此处是带输入参数的。

	UFUNCTION(BlueprintImplementableEvent)int32 ImplementableEvent4(const FString& myStr);

2.4、BlueprintNativeEvent

        在C++中声明和实现,蓝图可重载,函数实现的后面要加Implementation,否则会编译出错,但是在调用的时候还是用声明时的名字。无返回值的是事件,有返回值的是函数。代码如下

	UFUNCTION(BlueprintNativeEvent)void BlueprintNativeEvent1();UFUNCTION(BlueprintNativeEvent)int32 BlueprintNativeEvent2();UFUNCTION(BlueprintNativeEvent)void BlueprintNativeEvent3(const FString& myStr);UFUNCTION(BlueprintNativeEvent)int32 BlueprintNativeEvent4(const FString& myStr);

实现的代码如下,又返回值的必须返回一个值。

void AMyPawn1::BlueprintNativeEvent1_Implementation()
{GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("这是一个C++代码写的BlueprintNativeEvent事件"));
}int32 AMyPawn1::BlueprintNativeEvent2_Implementation()
{return 0;
}void AMyPawn1::BlueprintNativeEvent3_Implementation(const FString& myStr)
{}int32 AMyPawn1::BlueprintNativeEvent4_Implementation(const FString& myStr)
{return 0;
}

2.5、Meta元素说明符

该函数定义如下,而且必须实现,通过meta关键字实现其在蓝图中的名称改为“MyPrintTest”

	//元数据说明符,也即别名,在蓝图中会显示DisplayName定义的名字UFUNCTION(BlueprintCallable, Category = "MyFunction", meta = (DisplayName = "MyPrintTest"))void PrintMeta();

2.6、枚举

首先定义一个宏,代码如下,生成枚举的反射数据,通过反射将枚举暴露给蓝图,实现C++和蓝图的通信,BlueprintType的作用是可以在蓝图创建变量的时候也可以作为选项。如图2.6.1所示

UENUM(BlueprintType)//生成枚举的反射数据,通过反射将枚举暴露给蓝图,实现C++和蓝图的通信,BlueprintType的作用是可以在蓝图创建变量的时候也可以作为选项
namespace MyEnumType
{enum MyCustomEnum{Type1,Type2,Type3,};
}
图2.6.1

在蓝图中创建一个新的变量,变量的类型中可以选中C++代码中创建的这个枚举。同时,在蓝图中也可以调用该枚举,如图2.6.2所示:

图2.6.2
通过以下代码可以实现在各类面板和蓝图中使用该变量
	//枚举UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "MyEnum")TEnumAsByte<MyEnumType::MyCustomEnum> MyCustomEnum;

同时也可以在蓝图中调用和编辑该变量,如图2.6.3所示

图2.6.3

通常一个定义里只能有一个枚举,如下代码中会编译不通过,在MyEnumType中只能定义一个。

UENUM(BlueprintType)
namespace MyEnumType
{enum MyCustomEnum{Type1,Type2,Type3,};enum MyEnum2{One, Two, Three,};
}

三、总结

3.1、BlueprintImplementableEvent的函数在C++代码中只需要声明不需要实现。

3.2、BlueprintNativeEvent的函数在C++代码中声明了还必须实现,不实现会编译报错。实现中的函数名称后总有加上”_Implementation“,但是在调用的时候又要去掉”_Implementation“,这样才能在蓝图中被调用,使用带后缀”_Implementation“的只会在C++中调用,而蓝图中不会被调用。

3.3、”Blueprint Callable“关键字通常是放在前面的,如果放在后面可能会编译不通过。

3.4、BlueprintType的作用是可以在蓝图创建变量的时候也可以作为选项。

3.5、枚举的定义中只能定义一个枚举,多个会编译不通过。

http://www.ds6.com.cn/news/113001.html

相关文章:

  • 做游戏角色视频的网站今日最新国际新闻
  • 郑州外贸建站百度明星人气榜
  • 温州平阳县网站建设兼职如何做个网站推广自己产品
  • 网络公司网站网盟推广平台
  • wordpress博客怎么访问不了seo点击排名工具
  • 网站建设与管理李洪心广告网站留电话
  • 政府网站开发价格西安seo代理
  • 搜索引擎网站推广法sem是什么基团
  • 大众点评网怎么做团购网站百度热搜广告位
  • wordpress 调用当前分类名称seo和sem是什么意思
  • 微网站如何做微信支付宝支付宝支付宝支付百度地图导航2022最新版下载
  • 怎样设置网站网站制作优化排名
  • 2018年公司做网站注意事项如何把品牌推广出去
  • 做网站时怎样图片上传怎么才能让图片不变形_有什么插件吗西安网站建设哪家好
  • 上海网站建设空间关键词排名优化公司外包
  • 做社交网站的预算统计工具
  • 欧美只做les 网站免费推广网站注册入口
  • 潍坊哪里做网站好宁波技术好的企业网站制作
  • wordpress插件 缩略图seo策划
  • 广州网站建设网络推广河北seo公司
  • 北京市住房及城乡建设网站外包seo公司
  • 3d效果图设计制作武汉网站seo推广
  • 微网站模板代码电话营销话术
  • 建立网站顺序2023年7月疫情爆发
  • 网站建设定制单网站链接推广工具
  • 域名过期网站还有用吗中国体育新闻
  • 建一个手机网站需要多少钱百度网盘搜索引擎网站
  • 设计网站公司 都赞湖南岚鸿案例10游戏优化大师
  • 微信小程序怎么做网站人员优化方案怎么写
  • 织梦装修设计网站模板营销策略有哪些理论