Gibt es eine Möglichkeit, in Delphi einen eigenen Typ zu deklarieren, der nur aus einer bestimmten Menge aus Integerwerten besteht? Also so in der Art:
type TMyType = (1, 5, 48, 1337, 4711);
Und wenn ich mir dann von diesem Typ eine Variable erzeuge und der dann zur Laufzeit einen andren Wert zuweisen möchte (bspw: 123), dass ich dann eine
Exception bekomme? So in der Art hatte ichs schon probiert:
type TMyType = (myValue1 = 1, myValue2 = 5, myValue3 = 48, myValue4 = 1337, myValue5 = 4711);
Danach dann die Bereichsüberprüfung von Delphi angeschaltet mit {$R+}, aber zur Laufzeit ging das trotzdem noch:
Delphi-Quellcode:
var
myType: TMyType;
// ...
procedure blabla;
begin
myType := TMyType(123);
end;
Und danach hat die Variable myType wirklich auf ein nicht vorhandenes Element mit Index 123 gezeigt.