2016-07-22 110 views
1

我有以下enum如何使用枚举值?

enum Crank { X = 0, Y = 1 } 

然而,当我尝试

if (x == Crank.X) 

我得到指示

cannot convert from Crank to int 

我在哪里去错了一个错误?

+3

假设'x'是int,你可以枚举值转换为int比较它们,即'if(x ==(int)Crank.X)' – stuartd

+0

谢谢。但是为什么我需要施放它?我给它的值0 ... –

+2

来自文档:底层类型指定为每个枚举器分配多少存储空间。但是,显式转换对于从枚举类型转换为整型类型是必需的。 – W0rmH0le

回答

2

如果x是整型的,你需要将枚举值转换为int比较 if(x==(int)Crank.X)