4.25 Transition Guide

UProperty and all subclasses are not UObjects anymore…

A weak pointer went from


TWeakObjectPtr<UProperty> myProperty;

to


TWeakFieldPtr<FProperty> myProperty;

[HR][/HR]You can still use


FProperty::StaticClass();

and


myProperty->IsA( FxxxProperty::StaticClass() )

[HR][/HR]You can’t use anymore


myProperty->GetOuter();

you have to use instead


myProperty->GetOwner<UObject>();

[HR][/HR]You can’t use Cast<> on FProperties like before


CastChecked<UStructProperty>(myProperty);

Now you have to use a different one:


CastFieldChecked<FStructProperty>(myProperty);