UnrealHeaderTool (UHT) is a custom parsing and code-generation tool that supports the UObject system. Code compilation happens in two phases:
- UHT is invoked, which parses the C++ headers for Unreal-related class metadata and generates custom code to implement the various UObject-related features.
- The normal C++ compiler is invoked to compile the results.
When compiling, it is possible for either tool to emit errors, so be sure to look carefully.