gpt4 book ai didi

c# - Enum.GetValues(typeof(....)) 没有返回正确的枚举值

转载 作者:太空狗 更新时间:2023-10-29 20:46:10 24 4
gpt4 key购买 nike

给定这段代码:

public enum Enum1
{
ONE,
TWO
}

public enum Enum2
{
A,
B
}

此代码返回一、二:

foreach (Enum1 e in Enum.GetValues(typeof(Enum1)))
{
Console.WriteLine(e);
}

但这段代码并没有失败(因为 Enum2 etypeof(Enum1) 一起使用),而是返回 A、B:

foreach (Enum2 e in Enum.GetValues(typeof(Enum1)))
{
Console.WriteLine(e);
}

这是为什么?

最佳答案

因为在幕后,枚举只是整数 - 第二个返回 Enum1 的值,但实际上这些值只是 01 .当您将这些值转换为 Enum2 类型时,它们仍然有效并且对应于值“A”和“B”。

关于c# - Enum.GetValues(typeof(....)) 没有返回正确的枚举值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9331634/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com