UE5.4.2 C++ Project Build Fails After Any Change

Hi,

I just find what causes the issue but I do not understand what is behind the issue.
I have some code in old versions like:

TSubclassOf<GameplayAbility> StartupAbilities
or
TArray<FActiveGameplayEffectHandle> ActiveEffects

But I never include “Abilities/GameplayAbility.h” or “ActiveGameplayEffectHandle.h” and I can still build successfully and run the project with old version. Now I have upgrade UE from 5.3.2 to 5.4.2 I got error like:

11>BaseCharacter.h(89): Reference C2923 : 参见“UGameplayAbility”的声明
11>BaseCharacter.h(89): Error C3203 : “TSubclassOf”: 未指定的 类 模板 不能用作 模板 参数 “InElementType” 的 模板 参数,应为真实类型

I am stupid because I never thought it just because I need include some .h file. I don’t understand what’s happening here, could you please briefly explain this to me?

By the way I don’t know why my output has Chinese, I want to change the output to English.

Thanks!