type
   TokenType=(
// ±£á × 
_AUTO,  _BREAK,  _CASE,  _CHAR,  _CONST,  _CONTINUE,  _DEFAULT,
_DO,    _DOUBLE, _ELSE,  _ENUM,  _EXTERN, _FLOAT,     _FOR,
_GOTO, _IF,     _INT,   _LONG,  _REGISTER,_RETURN,   _SHORT,
_SIGNED,_SIZEOF, _STATIC,_STRUCT,_SWITCH,  _TYPEDEF,  _UNION,
_UNSIGNED,_VOID, _VOLATILE,_WHILE,
//_READ, _WRITE, _PRINTF, // 2ù×÷· 
_ASSIGN, _PLUS, _MINUS, _TIMES, _DIV, _MOD,
_BITWISE_AND, _BITWISE_OR, _BITWISE_NOT, _LOGICAL_NOT, _LT, _GT,_QUESTION,_SHARP, // interpunctions
_LPARAN, _RPARAN, _LBRACE, _RBRACE, _LSQUARE, _RSQUARE, _COMMA, _DOT, _SEMI, _COLON,_SINGLE_QUOTES,_DOUB_QUOTES, // complex operations
        //==,   !=    ++         --           +=           -=            *=
_EQ    , _NEQ , _PLUS_PLUS, _MINUS_MINUS, _PLUS_ASSIGN, _MINUS_ASSIGN, _TIMES_ASSIGN,
//  /=    ,   |=              //             /*          */
_DIV_ASSIGN,   _BIT_OR_ASSIGN,  _LINE_COMMENT,  _LCOMMENT,   _RCOMMENT,
//<=    >=   &&           ||           >>        <<        ->
_NGT , _NLT, _LOGICAL_AND, _LOGICAL_OR,  _ARITH_RM, _ARITH_LM ,_POINTER,
//  %=     ^=          >>=               <<=              &=              ::
_MOD_ASSIGN,_NOT_ASSIGN, _ARITH_RM_ASSIGN , _ARITH_LM_ASSIGN ,_BIT_AND_ASSIGN ,_CLASS_BELONG,
// others
_EOF, _ID, _NUM, _STRING, _CHARACTER, _LABEL, _ERROR, _NONE);   //==============
   //==±£á × ±í,°üਠ÷  · o 
   //==============
   ReservedWordTable=record
     ReservedWord:string[30];
     TokenType: set of TokenType;
   end;const
   ReservedKeywordList: array[0..31] of ReservedWordTable =
   (
     ('auto',_AUTO],     ('break',_BREAK),       ('case',_CASE),         ('char',_CHAR),
     ('const',_CONST),   ('continue',_CONTINUE), ('default',_DEFAULT),   ('do',_DO),
     ('double',_DOUBLE), ('else',_ELSE),         ('enum',_ENUM),         ('extern',_EXTERN),
     ('float',_FLOAT),   ('for',_FOR),           ('goto',_GOTO),         ('if',_IF),
     ('int',_INT),       ('long',_LONG),         ('register',_REGISTER), ('return',_RETURN),
     ('short',_SHORT),   ('signed',_SIGNED),     ('sizeof',_SIZEOF),     ('static',_STATIC),
     ('struct',_STRUCT), ('switch',_SWITCH),     ('typedef',_TYPEDEF),   ('union',_UNION),
     ('unsigned',_UNSIGNED), ('void',_VOID),     ('volatile',_VOLATILE), ('while',_WHILE),
   );现在到了const
   ReservedKeywordList: array[0..31] of ReservedWordTable =
   ()
这里就出现错误,请问各位怎么解决这个赋值问题.

解决方案 »

  1.   

    ( 'auto ',_AUTO],  ']'????
      

  2.   

    哦,是我写错了const
       ReservedKeywordList: array[0..31] of ReservedWordTable =
       (
         ('auto',_AUTO),     ('break',_BREAK),       ('case',_CASE),         ('char',_CHAR),
         ('const',_CONST),   ('continue',_CONTINUE), ('default',_DEFAULT),   ('do',_DO),
         ('double',_DOUBLE), ('else',_ELSE),         ('enum',_ENUM),         ('extern',_EXTERN),
         ('float',_FLOAT),   ('for',_FOR),           ('goto',_GOTO),         ('if',_IF),
         ('int',_INT),       ('long',_LONG),         ('register',_REGISTER), ('return',_RETURN),
         ('short',_SHORT),   ('signed',_SIGNED),     ('sizeof',_SIZEOF),     ('static',_STATIC),
         ('struct',_STRUCT), ('switch',_SWITCH),     ('typedef',_TYPEDEF),   ('union',_UNION),
         ('unsigned',_UNSIGNED), ('void',_VOID),     ('volatile',_VOLATILE), ('while',_WHILE),
       );
      

  3.   

    const 
       ReservedKeywordList: array[0..31] of ReservedWordTable = 
       ( 
         (ReservedWord:'auto';TokenType[_AUTO]),.....
      

  4.   

      
         (ReservedWord: 'auto ';TokenType:[_AUTO]),.....少了个: 看DELPHI的例子:
    type  TPoint = record
        X, Y: Single;
      end;
      TVector = array[0..1] of TPoint;
      TMonth = (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec);
      TDate = record
        D: 1..31;
        M: TMonth;
        Y: 1900..1999;
      end;
    const
      Origin: TPoint = (X: 0.0; Y: 0.0);
      Line: TVector = ((X: -3.1; Y: 1.5), (X: 5.8; Y: 3.0));
      SomeDay: TDate = (D: 2; M: Dec; Y: 1960);
      

  5.   

       ReservedKeywordList: array[0..1] of ReservedWordTable =
       (
         (ReservedWord: 'auto ';TokenType[_AUTO]),     (ReservedWord:'break';TokenType[_BREAK])
       );这样还是有问题啊Build
      [Error] Unit1.pas(48): ':' expected but '[' found
      [Error] Unit1.pas(48): ':' expected but '[' found
      [Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
    谢谢楼主了
      

  6.   

    VC中这个定义,在Delphi如何定义:
    private:
        enum BSearchType {_TYPESYMBOLTABLE,_TYPEKEYWORDTABLE};请问一下,这个在类中如何定义?