2014-02-25 45 views
1

每當我聲明一個enum,它根本不會編譯。我的代碼如下所示:每當我聲明一個枚舉,它不會編譯

private enum race {HUMAN, ORC, GOBLIN, UNDEAD} 

// The name of the player 
string playerName; 

// The Health Points of the player. Is to be modified a LOT. Keep that in mind! 
int HP = 100; 

// Made to test if the name chosen i the right one 
bool nameIsRight = false; 

cout("Hello fair traveler!\n\n"); 
cout("It has come to my knowledge, that you, a puny warrior, is up for the challenge, that is killing the dragon\n\n"); 

cout("Our records seems to be damaged. What was your name again?\n\n"); 
cout("Enter your name: "); 

// Sets playerName equal to the line entered by the player, turned into a string to prevent errors 
playerName = Console.ReadLine().ToString(); 

cout("\n"); 

do 
{ 
    string test; 
    cout("Are you sure that is the right name? (y/n)\n"); 
    test = Console.ReadLine(); 
    cout("\n"); 
    if (test.ToLower() == "y") 
    { 
     nameIsRight = true; 
    } 
    else if (test.ToLower() == "n") 
    { 
     cout("What is your name then?\n"); 
     playerName = Console.ReadLine(); 
    } 
    cout("\n"); 
} while (nameIsRight == false); 

cout("So, your name is " + playerName + "? That is a name i haven't heard in a long time!\n\n"); 
cout("Just for the record, we need your race. Hope you don't mind telling it again.\n\n"); 
cout("1: Human\n\n2: "); 

錯誤1}預計C:\用戶\黑爾布斯泰因\文件\的Visual Studio 2013 \項目\ simpleRPGConsole \ simpleRPGConsole \的Program.cs 12 10 simpleRPGConsole

錯誤2方法必須具有返回類型C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 25 13 simpleRPGConsole

錯誤3鍵入預期的C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 25 18 simpleRPGConsole

錯誤4的方法必須有返回類型C:\用戶\黑爾布斯泰因\文件\視覺工作室2013 \項目\ simpleRPGConsole \ simpleRPGConsole \ Program.cs的26 13 simpleRPGConsole

錯誤類型5預期C:\用戶\ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 26 18 simpleRPGConsole

錯誤6方法必須具有返回類型C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 28 13 simpleRPGConsole

錯誤7鍵入預期的C:\ Users \ Herbstein \ doc請注意,如果您的計算機上安裝了Windows操作系統,那麼您的計算機上必須安裝一個C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program的.cs 29 13 simpleRPGConsole

錯誤9類型預期C:\用戶\黑爾布斯泰因\文件\視覺工作室2013 \項目\ simpleRPGConsole \ simpleRPGConsole \ Program.cs的29 18 simpleRPGConsole

錯誤10無效的標記 '=' 中類,結構或接口成員聲明C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 32 24 simpleRPGConsole

錯誤11無效的標記 '(' 類,結構或接口成員聲明C:\用戶\黑爾布斯泰因\文件\視覺工作室2013 \項目\ simpleRPGConsole \ simpleRPGConsole \ Program.cs的32 42 simpleRPGConsole

錯誤12方法必須具有返回類型C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 32 45 simpleRPGConsole

錯誤13方法必須具有返回類型C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 34 13 simpleRPGConsole

Error 14 Type expected Type C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 34 18 simpleRPGConsole

錯誤15方法必須具有返回類型C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 39 17 simpleRPGConsole

錯誤16鍵入預期的C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program。cs 39 22 simpleRPGConsole

錯誤17類,結構或接口成員聲明中的無效標記'='C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 40 22 simpleRPGConsole

錯誤18無效的標記 '(' 類,結構或接口成員聲明C:\用戶\黑爾布斯泰因\文件\視覺工作室2013 \項目\ simpleRPGConsole \ simpleRPGConsole \ Program.cs的40 40 simpleRPGConsole

錯誤19方法必須具有返回類型C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 41 17 simpleRPGConsole

錯誤20類型預期C:\用戶\黑爾布斯泰因\文件\視覺工作室2013 \項目\ simpleRPGConsole \ simpleRPGConsole \ Program.cs的41 22 simpleRPGConsole

錯誤21無效的標記 '(' 類,結構或接口成員聲明C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 42 33 simpleRPGConsole

錯誤22在類,結構或接口成員聲明中無效的標記'='C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 44 33 simpleRPGConsole

錯誤23名稱空間不能直接包含成員,如字段或方法C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 46 17 simpleRPGConsole

錯誤24名稱空間不能直接包含成員例如字段或方法C:\ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 52 15 simpleRPGConsole

錯誤25類型或名稱空間定義或文件結束預期C: \ Users \ Herbstein \ documents \ visual studio 2013 \ Projects \ simpleRPGConsole \ simpleRPGConsole \ Program.cs 57 9 simpleRPGConsole

我該怎麼做才能做到這一點?我不想在沒有枚舉的情況下做出這樣的事情!

黑爾布斯泰因

+0

是這個c#或C++? – Fred

+0

從錯誤信息看來,代碼直接寫入類中,檢查所有正在執行的代碼是否在方法內,並且所有括號都是關閉的。 – TDull

回答

6

你不顯示整個代碼,但你enum似乎是在一個函數中。不要這樣做。

此外,您的方法需要在class。看看一些很好的例子。

另外,cout在C#中不存在 - 這是一個C++的東西,而且你沒有在任何語言中使用它。 C#使用Console.WriteLine

namespace MyApp 
{ 
    // Every method (function) must be in a class 
    class MyProgram 
    { 
     // This is where code execution begins 
     static void Main() 
     { 
      Console.WriteLine("Hello, world!"); 

      string playerName = GetPlayerName(); 
     } 

     static string GetPlayerName() 
     { 
      Console.WriteLine("Some cliche narrative here. Name?"); 

      return Console.ReadLine(); 
     } 

     // We can also make nested class/struct/enum definitions that are 
     // "private" to the containing class. 
     private enum APrivateEnum { Foo, Bar } 
    } 

    enum Race { Human, Orc, Goblin, Undead } 
} 
+1

+1。基本「哎呀,可悲的是,閱讀C#的基本語法」現實檢查。 – TomTom

+0

我知道基本的語法,我只是不知道它應該是外部函數。你非常感謝你的幫助! – Herbstein

+0

@ user3350284好的。歡迎來到Stack Overflow。請記住對任何有幫助的答案進行投票,並接受解決您問題的答案。 –

1

嘗試在方法的外部定義枚舉。