Dynamic array of USTRUCT?

I want to have an indexed dynamic array to store data, but when I try to do this:

FMyStruct *myStuff;

I get the following compiling error:

Inappropriate '*' on variable of type 'FMyStruct', cannot have an exposed pointer to this type (move it inside the CPP block).

I know TArray<> exists, but I want there to be an index for elements. For example I want to be able to place an element at myStuff[0] and myStuff[2] and still have myStuff[1] be NULL.

How can I make this possible?

TArray has an Insert function that allows you to specify the position at which you wish to add the element.