以十六进制值表示的int枚举

克里姆森

我有以下列举

public enum GridType
{
    Walkable = 0xFF000000,
    UnWalkable = 0xFF00000,
    Walked = 0xFF00000,
    Start = 0xFF00000,
    Destination = 0xFF00000
}

int值表示argb颜色值。(我知道它们是相同的值,稍后再输入真实值)


但是,编译器将引发错误:

无法将类型'uint'隐式转换为'int'。 存在显式转换(您是否缺少演员表?)

我该怎么做才能解决此问题?

吉姆·米歇尔(Jim Mischel)

您可以GridType使用uint

public enum GridType: uint
{
    Walkable = 0xFF000000,
    // etc
}

参见http://msdn.microsoft.com/zh-cn/library/vstudio/sbbt4032(v=vs.100).aspx

我以为您可以进行投射,但是根据评论,这是行不通的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章