Is removing elements of AA in foreach loop safe?
Jordan Wilson
wilsonjord at gmail.com
Fri Aug 30 19:33:15 UTC 2019
On Thursday, 29 August 2019 at 10:11:58 UTC, berni wrote:
> Iterating of some structure and removing elements thereby is
> always errorprone and should be avoided. But: In case of AA,
> I've got the feeling, that it might be safe:
>
>> foreach (k,v;ways)
>> if (v.empty)
>> ways.remove(k);
>
> Do you agree? Or is there a better way to achieve this?
This should work, due to the keys property returning a dynamic
array:
foreach (k; ways.keys) {
if (ways[k].empty)
ways.remove(k);
}
Jordan
More information about the Digitalmars-d-learn
mailing list