3
在.NET System.TypeCode
枚举,这些值如下:异常字符串类型代码
public enum TypeCode {
...
Double=14,
Decimal=15,
DateTime=16,
String=18,
}
字符串等于18 ..为什么不17?逻辑在哪里?
在.NET System.TypeCode
枚举,这些值如下:异常字符串类型代码
public enum TypeCode {
...
Double=14,
Decimal=15,
DateTime=16,
String=18,
}
字符串等于18 ..为什么不17?逻辑在哪里?
您可以按任意顺序指定任何数字(在您的情况下为整数)来枚举元素。如果未明确指定值,则默认情况下,第一个值将为0
。这不是exmplicitely分配将递增一前一元素的值所有其他值:
public enum TypeCode
{
Double = 42,
Decimal, // 43
DateTime = 0,
String = 18
}
UPDATE
为什么System.TypeCode
具有价值17
缺失 - 因为那里曾经是TimeSpan
类型,但it was removed。
所以就是这样! TimeSpan删除..现在很明显。 –
您为其指定了该值。这是逻辑。 – Oded
如果您问_why_枚举是以这种方式创建的,则需要询问创建枚举的人员。 – Oded
可能的兼容性问题 – Jacob