U++ USTRUCT结构体基本用法

📅 2026/7/14 23:26:58 👁️ 阅读次数 📝 编程学习
U++ USTRUCT结构体基本用法

本文用于记录虚幻学习。


定义与UENUM类似,在UCLASS上方;但需要插入GENERATED_BODY()。

USTRUCT(BlueprintType) struct FCharacterData { GENERATED_BODY() public: UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Character") FString CharacterName = TEXT("DefaultName"); UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Character") int32 Health = 100; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Character") float MoveSpeed = 600.0f; };

BlueprintType允许蓝图将这个结构体作为一种变量类型使用。编译后,蓝图即可创建ChacterData类型的变量。

在USTURCT中也可以创建成员函数,但不允许使用UFUNCTION。


定义完结构体变量,即可在头文件和源文件中使用。

//.h UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Character") FCharacterData CharacterData; //.cpp CharacterData.Name = TEXT("Knight"); CharacterData.Health = 200; CharacterData.MoveSpeed = 800.0f;