Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.009 Beiträge
 
Delphi 12 Athens
 
#4

AW: Anzahl der Elemente in einem Set ermitteln?

  Alt 14. Apr 2019, 16:13
Wenn der Set-Typ tatsächlich einen deklarierten Basistyp hat, dann geht das vielleicht auch einfacher:
Result := Ord(High(TSetElement)) - Ord(Low(TSetElement))

Bei der CountOfElements-Funktion müsste man doch auch noch ein Set übergeben, daß alle Elemente des Basistyps enthält, oder? Bei einem leeren Set schlägt die if-Anweisung immer fehl.

Wenn es nur um das Zählen der im Set enthaltenen Elemente geht, geht das auch einfacher:
Delphi-Quellcode:
type
  TSetElement = (liste von identifiern);
  TElementSet = set of TSetElement;

  function CountOfElements(const aSet: TElementSet ): integer;
  var
    I: TSetElement;
  begin
    Result := 0;
    for I in aSet do
      Inc(Result);
  end;
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat