Привет, ребята, у меня возникли проблемы с "порядком" значений перечисления. Это немного сложно объяснить, поэтому я написал код:
class Program
{
public enum EnumA
{
One = 1,
Two = One,
Three = Two,
Four = 4
}
public enum EnumB
{
One = 1,
Two = One,
Four = 4,
Three = Two
}
public enum EnumC
{
Two = One,
Three = Two,
Four = 4,
One = 1
}
static void Main(string[] args)
{
Console.WriteLine("Enum A:");
Console.WriteLine(EnumA.One);
Console.WriteLine(EnumA.Two);
Console.WriteLine(EnumA.Three);
Console.WriteLine(EnumA.Four);
Console.WriteLine();
Console.WriteLine("Enum B:");
Console.WriteLine(EnumB.One);
Console.WriteLine(EnumB.Two);
Console.WriteLine(EnumB.Three);
Console.WriteLine(EnumB.Four);
Console.WriteLine();
Console.WriteLine("Enum C:");
Console.WriteLine(EnumC.One);
Console.WriteLine(EnumC.Two);
Console.WriteLine(EnumC.Three);
Console.WriteLine(EnumC.Four);
Console.WriteLine();
Console.ReadLine();
}
}
Результат:
Enum A: Два Два Два Четыре
Enum B: Три Три Три Четыре
Enum C: Один Один Один Четыре
Мой вопрос: ПОЧЕМУ !? Я не могу найти логику вывода. В большинстве случаев необходимо найти некоторую логику, поэтому я надеюсь, что вы, ребята, сможете пролить свет на эту проблему.
Я использовал VS2010 / .Net 4.0 для компиляции и запуска кода.