Why engine not replicating UClasses?

I use TArray of UStructs variable and one of fields of struct is TSubclassOf. And array is replicated, but all fields with TSubclassOf is nullptr after replication.
What’s wrong? Classes is immutable objects, why fields can’t be replicated?

This struct:

USTRUCT()
class FSomeStruct
{
    GENERATED_USTRUCT_BODY()

public:
    UPROPERTY()
    FString StringField;  // replicated succesfully

    UPROPERTY()
    int32 IntField;  // replicated succesfully

    UPROPERTY()
    TSubclassOf<UMyClass> ClassField;  // not replicated, got nullptr

}

Replicated array:

UPROPERTY(Replicated)
TArray<FSomeStruct> SomeStructsArray;

Thanks!

Did you tried if normal UClass* works?

Did not tried just UClass*.

One more detail: With editor works normal, but with dedicated server and standalone clients got this.

My solution was store replicated Class Path Name of class string value and using LoadObject with this string to get class object. But it looks like a redundant code…