请问:
定义如下:
TDateRec = record
        Year: integer;
        Month: (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec);
        Day: 1..31;
    end;
var
    Record1: TDateRec;
在控制台中,怎样用write输出Record1.Month?

解决方案 »

  1.   

    可以用一个Case of 结构来判断:
    如:case Record1.Month of
      Jan:Write('Jan');
      Feb:Write('Feb');
      ...
      ...
      else
      Write('Error!');
    end;
      

  2.   

    呵呵,不行的,Pascal中是不能直接输出枚举类型的值的。
      

  3.   

    pilicat(delphi迷) 说的有道理
      

  4.   

    type TMonth = (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec);
    type TDateRec = record
            Year: integer;
            Month: TMonth;
            Day: 1..31;
        end;showMessage(TypInfo.GetEnumName(TypeInfo(TMonth),Integer(Record1.Month)));
      

  5.   

    以上代码的补充:
    {$M+}
    type TMonth = (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec);
    {$M-}
    type TDateRec = record
            Year: integer;
            Month: TMonth;
            Day: 1..31;
        end;
    showMessage(TypInfo.GetEnumName(TypeInfo(TMonth),Integer(Record1.Month)));