首页 > 编程语言 >UEC++ 结构体和枚举

UEC++ 结构体和枚举

时间:2022-09-19 15:36:06浏览次数:59  
标签:蓝图 BlueprintType C++ 枚举 UE 结构

1、结构体

  • 在虚幻C++中结构体和普通C++结构体构建方式相同,但是如果希望构建于蓝图交互的结构体则需要额外的处理!
  • UE支持结构体的构建和使用,但是由于蓝图特殊,普通的结构体定义无法被蓝图访问,我们需要借助USTRUCT宏进行构建UE中的结构体

语法:

USTRUCT(BlueprintType)
struct FBoxPosition {
    GENERATED_USTRUCT_BODY()
    int32 x;
    int32 y;
};

注意:结构体名称必须使用 开头,必须带两个操作宏,如需要在蓝图中使用,需要加入BlueprintType标记

 2、枚举

语法与C++相同,总的来说可以使用以下两种方式进行构建

添加宏记可以使枚举在蓝图中也可使用

第一种:空间构建方式

UENUM(BlueprintType)
namespace GColor { enum Type { Blue, Red }; }

使用:

GColor::Type::Blue;

特点:使用空间名称作为访问依据,可以更清晰的标明意图,方便使用。

第二种:直接创建

UENUM(BlueprintType)
enum class ZColor : uint8 { ERed, EBlue };

使用:

ZColor::EBlue;

定义枚举对象:

UPROPERTY(EditAnywhere)
TEnumAsByte<GColor::Type> Color;

定义枚举

UPROPERTY(EditAnywhere)
GColor Color;

为枚举在蓝图中创建别名

可以帮助枚举名进行蓝图别名创建,方便在蓝图中寻找操作(空间声明枚举的方式不适用)

UENUM(BlueprintType)
enum class ZColor : uint8 {
    Game UMETA(DisplayName = "GC")
};

 

标签:蓝图,BlueprintType,C++,枚举,UE,结构
From: https://www.cnblogs.com/limu-zy/p/16707733.html

相关文章

  • How To determine Linux Kernel Timer Interrupt Frequency
    HowTodetermineLinuxKernelTimerInterruptFrequencyhttps://www.advenage.com/topics/linux-timer-interrupt-frequency......
  • Vue的双向绑定原理
    只是储备:什么是MVVM模式,和MVC的区别?MVVM是模型-视图-视图模型,Vue和React都在使用MVVM模式,vm是v和m的桥梁,view页面和m模型数据之间通过vm是存在双向联系的; vue实现双向数......
  • 计算机毕业设计 SSM+Vue冷冻仓储管理系统 生鲜仓库管理系统 冷冻冷藏仓库管理系统Java
    ......
  • UEC++ 容器:TSet
    TSetTSet也是键值容器和TMap类似,但速度快,无需提供单独的键进行关联元素,不允许有重复的键。TSet也是值类型,支持常规复制、赋值和析构函数操作,以及其元素较强的所有权。......
  • Vue 系统组件 <KeepAlive> 简介
    <KeepAlive>@说明:缓存被包裹的组件先看段动态绑定组件代码:<component:is="activeComponent"></component>在上例代码中,随着组件的动态切换,旧的组件会被删除,新的组件......
  • c++ inline内联函数
    引入内联函数的目的是为了解决程序中函数调用的效率问题,这么说吧,程序在编译器编译的时候,编译器将程序中出现的内联函数的调用表达式用内联函数的函数体进行替换,而对于其......
  • vue-router query和params 传参和接收参数
    1、params方式传递和接收参数//传参this.$router.push({name:'checkDetailInfo',params:{fkdNum:fkdNum,jyayStr:jyayStr,......
  • vue中导出excel文件
    1、在src目录下创建一个目录vendor,放入Export2Excel.js2、安装相关组件npminstall-Sfile-saver 用来生成文件的web应用程序npminstall-Sxlsx 电子表格格......
  • UEC++ 容器:TArray
    说明:容器是方便我们存储数据的载体,在虚幻中,为我们提供了三种容器。分别是TArray,TMap,TSet。首先虚幻提供的容器都是同质容器,只能用来存储相同类型的数据。三种容器具备不同......
  • 接口测试-requests
    引言:你是如何做接口自动化的,用的工具于技术有哪些?2个维度:工具:postman、jmeter代码:requests一、Requests概述Requests在官方的文档中,有这么介绍的⼀句话,具体为:HTTPFo......