The subcomponent inherited from UActorComponent will be created using UActorComponent constructor. But UActorComponent constructor is like this
UActorComponent::UActorComponent(const FObjectInitializer& ObjectInitializer /*= FObjectInitializer::Get()*/)
: Super(ObjectInitializer)
{
OwnerPrivate = GetTypedOuter<AActor>();
PrimaryComponentTick.TickGroup = TG_DuringPhysics;
PrimaryComponentTick.bStartWithTickEnabled = true;
PrimaryComponentTick.bCanEverTick = false; // bCamEverTick is false
PrimaryComponentTick.bAllowTickBatching = true;
PrimaryComponentTick.SetTickFunctionEnable(false);
you need override constructor