我知道如何将枚举类型转换为整数。
type
TMyType = (mtFirst, mtSecond, mtThird);
var
ordValue:integer;
enumValue:TMyType;
...
ordValue:= Ord(mtSecond); // result is 1
但是,如何进行逆运算并将整数转换为枚举类型?
最佳答案
正如Ken回答的那样,您只需投放。但是要确保您具有正确的值,可以使用如下代码:
if (ordValue >= Ord(Low(TMyType))) and (ordValue <= Ord(High(TMyType))) then
enunValue := TMyType(ordValue)
else
raise Exception.Create('ordValue out of TMyType range');
关于delphi - 如何将整数转换为枚举类型?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8732391/