Eine andere Reihenfolge ist ein Fehler.
Delphi-Quellcode:
var
Test: TDictionary<Integer, String>;
Current: TPair<Integer, String>;
begin
Test := TDictionary<Integer, String>.Create;
try
Test.Add(1, 'Eins');
Test.Add(2, 'Zwei');
Test.Add(3, 'Drei');
for Current in Test do
ShowMessage(Current.Value);
finally
Test.Free;
end;
end;
Das heißt es ist auch ein Fehler, dass dort nicht Eins, Zwei, Drei herauskommt?
for..in heißt nur "gehe alle Elemente durch". Nicht mehr und nicht weniger.