我只是想问一个关于Enums的问题。我有一个看起来像这样的枚举:
public enum CameraPosition
{
ROOM_1,
ROOM_2,
ROOM_3
}
所以我想要做的是,例如,我目前正在使用由ROOM_2
表示的值。现在我按下一个按钮,它应该将其切换为ROOM_1
所代表的值,但不必硬编码从ROOM_2
到ROOM_1
的情况。
因此,如果我的缓存值定义如下:
CameraPosition pos = CameraPosition.ROOM_2;
我想做这样的事情:
pos = CameraPosition.ROOM_2 - 1;
这意味着pos
现在是ROOM_1
。
这可能与Enums有关,还是我必须推出自己的解决方案来实现它?也许是另一种方法._。
答案 0 :(得分:1)
是的,你可以这样做。默认情况下,在C#中,枚举是整数(see documentation)。如果您愿意,可以显式设置值,或者允许它以0开头。另请参阅this question上的第一个答案。