Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

AW: Anzahl der Elemente einer Aufzählung

  Alt 10. Nov 2012, 20:21
Im Prinzip darin, daß die Zählung nicht unbedingt bei 0 begonnen werden muß.

Aber wenn man es ganz genau sieht, müßte man sogar noch genauer hingucken, denn auch zwischendurch kann was weggelassen werden, aber real paßt noch viel mehr in in diese Variable rein. (2 hoch (SizeOf(TMeineAufzaehlung) * 8))


(aber leider ist die RTTI seit jahrzehnten defekt, wenn es um Enums mit benutzerdefinierten Werten geht)


Delphi-Quellcode:
type
  TMeinGemeinerEnum = (Abc=3, Xyz=9);

Anzahl = 2
Low(TMeinGemeinerEnum) = Abc
High(TMeinGemeinerEnum) = Xyz
Ord(Low(TMeinGemeinerEnum)) = 3
Ord(High(TMeinGemeinerEnum)) = 9
Ord(High(TMeinGemeinerEnum)) + 1 = 10 (aka Lenght, wenn man bei 0 beginnt zu zählen)
Ord(High(TMeinGemeinerEnum)) - Ord(Low(TMeinGemeinerEnum)) + 1 = 7
$2B or not $2B

Geändert von himitsu (10. Nov 2012 um 20:27 Uhr)
  Mit Zitat antworten Zitat