<p>Am 01.04.2017 13:31 schrieb "Jürgen Hestermann" <<a href="mailto:juergen.hestermann@gmx.de">juergen.hestermann@gmx.de</a>>:<br>
><br>
> I am wondering what the purpose of filling all<br>
> array elements with zero's could be.<br>
> If I want to discard all elements I would simply delete<br>
> the whole array (setlength(MyArray,0) ).<br>
><br>
> But when should it be useful to keep all elements and<br>
> just overwrite them all with zero's (which is also very time consuming)?<br>
> If the exisiting values are no longer valid then why not<br>
> simply delete these elements?<br>
> It's the fastest way to get rid of them.<br>
> If elements were zero before overwriting them with zero's<br>
> I cannot even distinguish between original and overwritten elements.<br>
></p>
<p>If you wouldn't change the size of the array then merely doing FillChar (if not working with managed types) is more performant then freeing the array and allocating it again (which will also zero out the elements).<br>
Normally the performance difference isn't *that* important, but sometimes that difference can make or break something.</p>
<p>Regards,<br>
Sven</p>