我从枚举中定义的项目总数中得知,我可以使用以下方法获取枚举数量:
Enum.GetNames(typeof(Item.Type)).Length;
效果很好!
但是,我需要将这个数字设为常量数字,这样我就可以在Unity的[Range(int, int)]
功能中使用它。
private const int constEnumCount = Enum.GetNames(typeof(Item.Type)).Length;
以上方法无法生效,因为枚举的数量不是一个常数,所以我不能将它赋值给一个常量变量。
如何获取枚举的数量作为一个常数?
const
时,您应该小心,因为该值需要在编译时使用,并且在编译时传播到所有引用的程序集中。是否可以改用readonly
? - Fabio Lima