2016-07-22 111 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)