Enum.GetValues ​​(typeof (…)) не возвращает правильные значения перечисления

Учитывая этот код:

public enum Enum1
{
    ONE,
    TWO
}

public enum Enum2
{
    A,
    B
}

Этот код возвращает ОДИН, ДВА:

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

Но этот код вместо сбоя (потому что Enum2 e используется с typeof (Enum1 ) ), возвращает A, B:

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

Почему?

6
задан JasonMArcher 26 May 2015 в 23:46
поделиться