Hi inst666,
der Abschnitt lautet zwar wirklich so
Delphi-Quellcode:
case MyColor of
Red: X := 1;
Green: X := 2;
Blue: X := 3;
Yellow, Orange, Black: X := 0;
end;
aber wie du siehst, kann es sich nicht um einen String handeln, da die ' fehlen.
Wenn du dir aber noch folgendes dazudenkst, dann stimmt der Code wieder:
Delphi-Quellcode:
type
MyColors = (Black, Blue, Green, Orange, Red, Yellow);
//...
var
MyColor: MyColors;
//...
//Hier kommt die case-Abfrage
Es funktioniert aber auch, wenn MyColor als Integer definiert ist, und Red, Green usw. als Konstanten deklariert sind.
Dies alles ändert aber nichts an der Tatsache, dass bei case nur ordinale Typen verwendet werden können. Alle Float- und String-Typen gehören da einfach mal nicht dazu, da kann man nichts ändern.
Greetz
alcaeus