使索引 0 returns 为空字符串的枚举
Making an enum where index 0 returns a blank string
如果您尝试在枚举的索引 0 上使用 ToString(),我将如何创建一个枚举,它将 return 要么:
- 包含不可见字符的字符串,或
- 长度为0的空字符串。
我尝试过的事情:
public enum PowersOfTen
{
"" = 0, // identifier expected
thousand = 1,
million = 2,
billion = 3,
// etc
}
public enum PowersOfTen
{
= 0, // identifier expected
thousand = 1,
million = 2,
billion = 3,
// etc
}
public enum PowersOfTen
{
/**/ = 0, // identifier expected
thousand = 1,
million = 2,
billion = 3,
// etc
}
提前致谢!
[编辑]
这本来是 1000 的幂,而不是 10,我的错!
C# 语言参考将枚举类型定义为
a value type defined by a set of named constants of the
underlying integral numeric type.
因此枚举声明中的每个值都必须有一个名称,这意味着空字符串在该上下文中无效。
正如一些评论者所暗示的那样,如果您需要空字符串作为值,那么使用枚举是不合适的。
如果您尝试在枚举的索引 0 上使用 ToString(),我将如何创建一个枚举,它将 return 要么:
- 包含不可见字符的字符串,或
- 长度为0的空字符串。
我尝试过的事情:
public enum PowersOfTen
{
"" = 0, // identifier expected
thousand = 1,
million = 2,
billion = 3,
// etc
}
public enum PowersOfTen
{
= 0, // identifier expected
thousand = 1,
million = 2,
billion = 3,
// etc
}
public enum PowersOfTen
{
/**/ = 0, // identifier expected
thousand = 1,
million = 2,
billion = 3,
// etc
}
提前致谢!
[编辑]
这本来是 1000 的幂,而不是 10,我的错!
C# 语言参考将枚举类型定义为
a value type defined by a set of named constants of the underlying integral numeric type.
因此枚举声明中的每个值都必须有一个名称,这意味着空字符串在该上下文中无效。 正如一些评论者所暗示的那样,如果您需要空字符串作为值,那么使用枚举是不合适的。