Loop through TArray of a struct

You can still used ranged-for loops and get an index, granted it requires an extra bit of code.

int32 Index = INDEX_NONE;
for (const FItem& Item : Items)
{
    Index++;
   //WhateverHere
}

or you can use traditional for loop

for (int32 I = 0; I < Items.Num(); ++i)
{
  Items[i];
}

Loops are pretty simple.