被DefaultToInstanced修饰的类作为另外一个类的成员变量时,在蓝图中编译会被清空

代码如下:

UTBuff.h:

UCLASS(Blueprintable,BlueprintType,DefaultToInstanced,hidecategories=Object,editinlinenew,Category=“Buff”)

class UNREALTOURNAMENT_API UUTBuff : public UObject

{

};

UTBuffManager.h:

USTRUCT(BlueprintType)

struct FBuffItem
{

GENERATED_USTRUCT_BODY()

UPROPERTY(EditAnywhere,BlueprintReadWrite,Category="Buff")
FName	Name;
UPROPERTY(EditAnywhere,BlueprintReadWrite,Category="Buff")
UUTBuff*	Buff;

};

UCLASS(Blueprintable,BlueprintType,hidecategories=(Actor,Object,Replication,Input,Tags,Rendering))

class UNREALTOURNAMENT_API AUTBuffManager : public AActor
{
GENERATED_BODY()

public:

UPROPERTY(EditAnywhere,BlueprintReadWrite,Category="BuffManager")
TArray<FBuffItem> BuffList;

    ........

};

在编辑器中为UTBuffManager的蓝图配置BuffList之后,一旦点击编译,BuffList中配的数据就会被清空。