目录

UE虚幻引擎结构分析(4):UEnum

UEnum

//
// Reflection data for an enumeration.
//
class COREUOBJECT_API UEnum : public UField
{
	// ... (base class and other declarations remain)

protected:
	/** List of pairs of all enum names and values. Offset:0x40 */
	TArray<TPair<FName, int64>> Names;

	/** How the enum was originally defined. */
	ECppForm CppForm;

	/** Enum flags. */
	EEnumFlags EnumFlags;

	/** pointer to function used to look up the enum's display name. Currently only assigned for UEnums generated for nativized blueprints */
	FEnumDisplayNameFn EnumDisplayNameFn;

	/** global list of all value names used by all enums in memory, used for property text import */
	static TMap<FName, UEnum*> AllEnumNames;

private:
	FString CppType;
}

UField

class COREUOBJECT_API UField : public UObject
{
	DECLARE_CASTED_CLASS_INTRINSIC(UField, UObject, CLASS_Abstract, TEXT("/Script/CoreUObject"), CASTCLASS_UField)

	typedef UField BaseFieldClass;
	typedef UClass FieldTypeClass;

	/** Next Field in the linked list Offset:0x28 */
	UField* Next;
}
虚幻引擎 逆向工程