Why does the engine crash when adding to an array ?

Try marking the tarray as a UPROPERTY?



UPROPERTY()
TArray<UStaffMember*>   StaffList;


Thats my guess. Whenever I see issues like this it has to do with garbage collection. Also make sure the actor or whatever that the tarray is declared in is not being garbage collected as well.