各位高人请指点
小弟定义了一个
                 public class Token //定义一个Token,Token包括(类型,具体值)
{
TokenType type;
public string name; //char to string
}
        public enum TokenType
{
ERROR, UNKNOWN,
LEXER_DONE, // success!
IF, THEN, ELSE, WHILE, DO, BEGIN, END,
ID, NUM, //11
AND, OR,
LT, LE, GT, GE, EQ, //18
ASSIGN, PLUS, MINUS, MUL, DIV, //23
LP, RP, SEMI
}
以下是问题关键:
小弟在VC++中定义可以通过,但是在C# 中出错。
请问高人如何在C#中定义????(毕业设计,请高手速回)
static Token ReservedWords[MAXRESERVED] = {
{IF, "if"},
{THEN, "then"},
{ELSE, "else"},
{WHILE, "while"},
{DO, "do"},
{BEGIN, "begin"},
{END, "end"}
};

解决方案 »

  1.   

    补充
    const int MAXRESERVED=7;
      

  2.   

    namespace ConsoleApplication2
    {
        class Token
        {
            public Token(TokenType type, string name)
            {
                this.type = type;
                this.name = name;
            }
           public TokenType type;
           public string name;
        }    enum TokenType
        {
            ERROR, UNKNOWN,
            LEXER_DONE, // success!
            IF, THEN, ELSE, WHILE, DO, BEGIN, END,
            ID, NUM, //11
            AND, OR,
            LT, LE, GT, GE, EQ, //18
            ASSIGN, PLUS, MINUS, MUL, DIV, //23
            LP, RP, SEMI
        }
        class Program
        {        
            static void Main(string[] args)
            {  
                Token[] ReservedWords = new Token[]{
                    new Token(TokenType.IF,"if"),
                    new Token(TokenType.AND,"and")
                };
            }
        }
    }