【发布时间】:2015-06-20 10:19:32
【问题描述】:
在 C# 中使用代码:
enum COMPUTER_NAME_FORMAT
{
ComputerNameNetBIOS,
ComputerNameDnsHostname,
ComputerNameDnsDomain,
ComputerNameDnsFullyQualified,
ComputerNamePhysicalNetBIOS,
ComputerNamePhysicalDnsHostname,
ComputerNamePhysicalDnsDomain,
ComputerNamePhysicalDnsFullyQualified
}
string format = "ComputerNameDnsFullyQualified";
(COMPUTER_NAME_FORMAT)Enum.Parse(typeof(COMPUTER_NAME_FORMAT), format)
如何在 C++ 中使用它?
【问题讨论】:
-
你可以使用宏来生成你的枚举,它的值的数组,以及它的字符串数组并排,然后编写一个初始化函数,它将遍历字符串数组来找到你的字符串,然后从 values 数组中返回对应的值。你可以用一张地图来加快速度。我在 SO 上找不到解决方案,但其他方向的解决方案可以帮助您入门:stackoverflow.com/questions/201593/… 我还编写了一个简单的库来执行此操作github.com/aantron/better-enums