【UE4 C++】Enum 、与Struct

时间:2021-04-22
本文章向大家介绍【UE4 C++】Enum 、与Struct,主要包括【UE4 C++】Enum 、与Struct使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

枚举

  • UENUM宏搭配BlueprintType可以将枚举暴露给蓝图,不使用的话,仅能在C++使用
//定义一个原生enum class
enum class ETypePrimary{
	Type1,
	Type2,
	Type3
};

//暴露给蓝图
UENUM(BlueprintType)
enum class ETypeForBP:uint8
{	
	Type1,
	Type2,
	Type3
};

结构体

  • BlueprintType 将枚举暴露给蓝图
//结构体
//暴露给蓝图,蓝图可用
USTRUCT(BlueprintType)
struct TUTORIAL_CPLUSPLUS_API FMyStruct
{
	GENERATED_USTRUCT_BODY()

	UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = myStruct)
		FString url = FString("www.baidu.com");
	UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = myStruct)
		FString name = "baidu";
};

UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = Stats)
		FMyStruct testStruct;

  • 继承FTableRowBase之后用于DataTable
USTRUCT(BlueprintType)
 //继承自FTableRowBase之后可以用于DataTable
struct  FUeStructForDT:public FTableRowBase
{
	GENERATED_BODY()

	UPROPERTY(BlueprintReadWrite,EditAnywhere,Category="StructForDT")
	int32 number = 0;
	UPROPERTY(BlueprintReadWrite,EditAnywhere,Category = "StructForDT")
	bool bUeStruct = true;
};

原文地址:https://www.cnblogs.com/shiroe/p/14691171.html