<Gameplay Class>.h 与 <Gameplay Class>.生成的.h

问题描述 投票:0回答:2

在虚幻引擎中,两者有什么区别? 我在 API 中找不到它,只是这样:https://docs.unrealengine.com/5.0/en-US/gameplay-classes-in-unreal-engine/

我怀疑如果您从虚幻编辑器创建类,它会添加 . generated ,但我不明白有或没有它是否有任何不同。

unreal-engine5
2个回答
0
投票

啊,所以在类的实际头文件中需要 .generate 标头(特别是最后一个标头)。

https://forums.unrealengine.com/t/creating-classes-in-visual-studio/282386/4


0
投票

Unreal有一个代码生成工具,称为“Unreal Header Tool”,简称UHT。在项目的构建过程中,它在实际编译器之前运行,根据代码中的

UPROPERTY()
UFUNCTION()
USTRUCT()
UENUM()
等宏生成反射代码.

所有这些信息都存储在两个文件中:

<Class>.generated.h
<Class>.generated.cpp

标头需要包含在标头的最后,以确保文件中的所有引用在生成的代码中都可能有效。生成的头文件中的所有内容都可以通过

UClass
反射系统访问。

您可以在项目的“Intermediate/Build”目录中找到生成的文件。

您可以在 GitHub 上的项目中找到 UHT 的实现,并在 docs 中找到有关它的更多信息。

© www.soinside.com 2019 - 2024. All rights reserved.