Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#31

AW: Eure Meinung: Syntaxerweiterung Set-Typen auf mehr als 255 Elemente

  Alt 22. Aug 2020, 19:28
Ja, mit Variablen (festen Typen als Array) funktioniert es,
mein Problem bei dieser Variante liegt in der Nutzbarkeit.
Delphi-Quellcode:
if m96 in [m0, m128, m256, m512, m1024] then begin
  // Nein
end else if m512 in [m0, m128, m256, m512, m1024] then begin
  // Ja
end;
Leider wird hier ein SET generiert, es wird wegen der Grenzen gemeckert und der Operator mit dem ARRAY wird garnicht erst gesucht.

Man müsste das Array somit erstmal erzwingen.
Delphi-Quellcode:
if m96 in CreateArray([m0, m128, m256, m512, m1024]) then begin
  // Nein
end else if m512 in CreateArray([m0, m128, m256, m512, m1024]) then begin
  // Ja
end;

function CreateArray(const Values: array of Word): TArray<Word>;
Und das ist einfach nur umständlich.

Oder man baut eben die Contains-Funktion und verwendet kein IN, was aber auch unschön ist.
$2B or not $2B

Geändert von himitsu (22. Aug 2020 um 19:34 Uhr)
  Mit Zitat antworten Zitat