Das for/in funktioniert. Aber die Sortierung ist immer so wie in der Deklaration.
Aber auf die "gewünschte" Sortierung bin ich angewiesen...
Ein Set hat per Definition keine Sortierung. Lediglich der Basistyp hat eine. Wenn die Reihenfolge wichtig ist, dann sind Arrays der bessere Ansatz.
Delphi-Quellcode:
var
BlubbSet: TArray<TBlubb>; // TBlubb = (bb1, bb2, bb3, bb4, bb5, bb6, bb7);
Der Rest kann eigentlich so bleiben.
Achtung! Es hindert dich niemand, ein TBlubb mehrmals in das Array zu setzen. Bei einem Set wäre das egal.