언리얼 엔진의 구조체 | 언리얼 엔진 5.5 문서 | Epic Developer Community
• UStruct는 UProperty를 지원하지만 가비지 컬렉션 시스템에 의해 관리되지 않으며 UFunction 함수를 제공할 수 없습니다.
USTRUCT(BlueprintType) //BlueprintType : 블루프린트와 호환 가능
struct FMyStruct
{
GENERATED_BODY() //이 매크로는 언리얼 오브젝트와 동일함. 이 구조체가 가지고 있는 각종 속성들을
//리플렉션을 통해서 활용할 수 있는 기본 뼈대를 제공함.
//구조체의 멤버변수에 UPROPERTY 매크로를 추가해주면
//리플렉션 기능이 들어가면서 구조체의 멤버변수를 조회하거나, 블루프린트와 연동이 가능해짐.
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Test")
int32 MyIntegerMember;
//UPROPERTY를 안붙이면 C++에서만 사용하는거
int32 NativeOnlyMember;
//구조체에 이렇게 언리얼 오브젝트 포인터를 선언하게된다면
//반드시 UPROPERTY()를 붙여줘야지만 자동으로 메모리 관리를 할 수가 있게됨.
UPROPERTY()
UObject* SafeObjectPointer
}
Student.h
// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "UObject/NoExportTypes.h"
#include "Student.generated.h"
/**
*
*/
UCLASS()
class UNREALCONTAINER_API UStudent : public UObject
{
GENERATED_BODY()
};