Enums 如何在Haxe中迭代枚举?

Enums 如何在Haxe中迭代枚举?,enums,iterator,haxe,Enums,Iterator,Haxe,我有一个枚举器类型: enum PlayerProps { Attempts; Gold; Diamonds; } 我应该如何迭代所有枚举值?比如: var props = new Map<PlayerProps, Int>(); for (prop in PlayerProps) props[prop] = 0; var props=newmap(); 用于(播放器中的道具) 道具[道具]=0; 您需要的是: 正在进行示例。谢谢,我也在稍后找到了

我有一个枚举器类型:

enum PlayerProps {
    Attempts;
    Gold;
    Diamonds;
}
我应该如何迭代所有枚举值?比如:

var props = new Map<PlayerProps, Int>();
for (prop in PlayerProps)
    props[prop] = 0;
var props=newmap();
用于(播放器中的道具)
道具[道具]=0;

您需要的是:


正在进行示例。

谢谢,我也在稍后找到了allEnums。但是现在我已经了解到Map不能使用enum类型作为键…哦,我不适合不测试它,我认为您可以通过使用enum的int值找到一个解决方法(它应该可以以某种方式访问),但我想这不是最好的解决方案。您是否考虑过创建对象而不是贴图?您可以将一个类定义为每个属性的字段(这可能适合您的需要,也可能不适合您的需要),我正在尝试使用IntMap和Type.enumIndex方法找到解决方法。但这看起来相当笨拙。@映射中的meps枚举应该可以工作,它们应该使用:。如果您有问题,请尝试将其键入
var-mProps:EnumValueMap=new-EnumValueMap()
,然后查看这是否会有所不同。。。
for (prop in Type.allEnums(PlayerProps))