Dann schreibe ich mir eben einen TArray.ForEach<T>(Action:TAction<T>)
und kann mir diese Hilfsvariablen sparen.
Und hast dafür zigmal langsameren Code, GE-ZETT!

Für 1.000.000 fette Records in einem Array benötigen die Aufrufe (von allen Records) 8ms - soviel Zeit habe ich so gerade noch

Mit mehr habe ich es nicht getestet, weil die Records so fett waren, dass der verfügbare Speicher nicht mehr ausreichte
Aber mit einem
for in
habe ich das auch getestet - das hat mir aber zu lange gedauert (>>1 Sekunde)
Kaum macht man's richtig - schon funktioniert's

Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)