如果我想要在虚幻引擎4中遵循IWYU(包含您使用)的内容,首先包括什么?

我读了这篇文章。 https://docs.unrealengine.com/latest/INT/Programming/UnrealBuildSystem/IWYUReferenceGuide/index.html

它说:“IWYU模式默认为引擎和引擎插件启用。 所以,我打开IWYU模式通过添加PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs; 到我的模块。 由于“.cpp文件首先包含了匹配的.h文件”,从而导致了很多错误。

所以,我的问题是,

  • 如果一些cpp文件共享一个头文件(例如,一个头文件定义了API并且有几个cpp文件具有实现),我应该首先包含哪个头文件?
  • 一些像“AutomationCommandline.cpp”这样的虚幻引擎文件首先包含“CoreMinimal.h”。 这看起来是违反了IWYU的规则。 如果是这样,怎样才能编译没有错误?

谢谢。