Meine Idee mit dem Ord(High(TEnum)) war so gedacht:
Delphi-Quellcode:
type
TEnum = ( t1, t2, t3);
var
lEnum: TEnum;
begin
{$DEFINE ENUMCOUNT 0}
case lEnum
of
t1:
begin
{$DEFINE ENUMCOUNT ENUMCOUNT+1}
...
end;
t2:
begin
{$DEFINE ENUMCOUNT ENUMCOUNT+1}
...
end;
// Hier immer letztes Element aus der Case-Anweisung eintragen.
{$IF Ord(High(TEnum)) <> ENUMCOUNT} {$MESSAGE Error 'Case-Fall fuer jedes Element ausprogrammieren!'} {$IFEND}
else
raise Exception.Create('
Fehlermeldung');
end;
end;