enum orientation : byte 
    {    
        north=1,
        south=2,
        east=3,
        west=4
    }
    class Program
    {
        static void Main(string[] args)
        {
            orientation myDirection = orientation.north;
            Console.WriteLine("myDirection={0}",myDirection);
            Console.ReadKey();
        }
    }

解决方案 »

  1.   

    Console.WriteLine("myDirection={0}",myDirection);
    最符合这个的重载是 WriteLine(string s, object o);
    object的ToString是输出Type Name。所以
    最起码的你把myDirection给ToString一下吧。
      

  2.   


    这句话是对的。至于object的ToString是输出Type Name。当我没说,因为这里不是因为这个。
      

  3.   

    如果你想输出1,enum orientation : int定义为int好啦
      

  4.   

     Console.WriteLine("myDirection={0}", (int) myDirection);
      

  5.   

    Console.WriteLine("myDirection={0}", ((int)myDirection).ToString());
      

  6.   

    要想输出1的话把你这句改一下
    Console.WriteLine("myDirection={0}",((byte)myDirection).ToString());
      

  7.   

    Console.WriteLine("myDirection={0}", (int)myDirection);
      

  8.   

    Console.WriteLine("myDirection={0}",myDirection.ToString());
      

  9.   

     class Program
        {
            static void Main(string[] args)
            {
                //orientation myDirection = orientation.north;
                orientation myDirection = orientation.north;
                Console.WriteLine("myDirection={0}", (int)myDirection);
                Console.ReadKey();        }
            enum orientation : byte
            {
                north = 1,
                south = 2,
                east = 3,
                west = 4
            }    }这样运行出来得到的是mydirection=1;