2015-07-02 82 views
2

我自學C++自學,所以我只想問你的原諒,如果我的問題是非常基本的。代碼塊C++在枚舉之前期望預期的主表達式

我下面就www.learncpp.com

教程按照教程,我可以定義我的C++陣列,例如像這樣

int main() 
{ 
    using namespace std; 
    enum ArrayElements 
    { 
     MAX_ARRAY_SIZE = 5; 
    }; 

    int anArray[MAX_ARRAY_SIZE]; 
    return 0; 
} 

但代碼塊繼續發出錯誤

||=== Build: Debug in CH6 (compiler: GNU GCC Compiler) ===| 
In function 'int main()':| 
|6|error: expected primary-expression before 'enum'| 
error: expected ';' before 'enum'| 
||=== Build failed: 2 error(s), 1 warning(s) (0 minute(s), 0 second(s)) ===| 

我只是不知道是什麼導致了錯誤,或者我跟隨的教程有問題嗎?

+0

正如我現在所瞭解的,在主內部或外部聲明它不是問題。它在枚舉中的分號。也許是一個新手的錯誤。謝謝。 –

+1

我會推薦一個更可靠的learncpp源代碼 - 這裏有一個很好的書籍列表(http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list)。 – molbdnilo

+0

@molbdnilo感謝您的鏈接。 –

回答

5

刪除枚舉內的分號。

MAX_ARRAY_SIZE = 5; 
    //   ^

如果你有枚舉裏面更多的名字,他們用逗號分隔,

enum COLOR 
{ 
    RED, 
    BLUE, 
    GREEN 
}; 
+0

哦jeez ..所以它的教程有問題。感謝您幫助新手。儘管如此,我並不樂意。謝謝。 –

+0

@MarkEstrada:在本教程論壇中發佈此答案的鏈接:這是一個微不足道的錯字,但如果修復將解決許多新手頭痛的問題! –

-3

替換枚舉ArrayElements具有以下塊碼 INT MAX_ARRAY_SIZE = 5;

+0

所以你建議不要遵循教程的邏輯和教訓流程和結構,而是要遵循你的一個。他應該如何處理所有其他課程?你有替代他們嗎?只是因爲一個愚蠢的語法錯誤而把所有東西都扔掉了? –

+0

是我的建議錯誤或誤導? –

+0

這是里程碑,因此,錯誤 –

相關問題