gpt4 book ai didi

delphi - 在 Delphi Prism 中将 int 转换为 Enum

转载 作者:行者123 更新时间:2023-12-03 15:31:31 25 4
gpt4 key购买 nike

与这个问题基本相同,但在 Delphi Prism 中:

Cast int to enum in C#

我设法从字符串中做到这一点:

YourEnum := Enum.Parse(TypeOf(YourEnum), "mystr") as YourEnum

但是我尝试了以下操作,并收到类型不匹配错误:

YourEnum := 3 as YourNum

知道将 int 转换为 Enum 的语法是什么吗?

最佳答案

@Robo,将 int 转换为 Enum 的语法是

YourEnumVar := YourEnum(3);

YourEnumVar := Object(3) as YourEnum;

查看此示例

namespace ConsoleAppEnumsDelphiPrism;

interface

type
Language = (Delphi=1,Delphi_Prism,CBuilder);

ConsoleApp = class
public
class method Main;
end;

implementation

class method ConsoleApp.Main;
var
MyEnum : Language;
begin
// String to Enum
MyEnum := Language(Enum.Parse(typeof(Language), 'Delphi_Prism'));
Console.WriteLine(MyEnum.ToString());//Print Delphi_Prism

// Int to Enum
MyEnum:=Language(2);
Console.WriteLine(MyEnum.ToString());//Print Delphi_Prism

// Int to Enum using "as"
MyEnum:= Object(1) as Language;
Console.WriteLine(MyEnum.ToString());//Print Delphi

Console.ReadKey();
end;

end.

关于delphi - 在 Delphi Prism 中将 int 转换为 Enum,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2383718/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com