2012-06-04 73 views
1

我正在從書中學習C++,下面的示例在代碼塊中不起作用。我的編譯器給出了一個錯誤:錯誤使用枚舉沒有先前的聲明?

use of enum 'Days' without previous declaration

有人能讓我在這裏嗎?

#include <iostream> 
using namespace std; 

int main() // main routine 
{ 
    int a; 
    enum Days (zo,ma,di,wo,do,vr,za); // <error here> : use of enum 'Days' without previous declaration 
    Days today; 
    today = ma; 
    if (today == zo || today == za) 
     cout << "weekend \n" 
    else 
     cout << "ohno workday \n"; 
    return 0; 
} 
+8

這些括號應該是大括號。 – chris

+0

@chris:小心做出一個實際的答案? ;) –

+0

@ K-ballo,我很快就注意到了。我並沒有真正看清楚它是否解決了這個問題:p – chris

回答

11

您錯誤地使用了enum。你的括號應該是括號:

enum Days {zo,ma,di,wo,do,vr,za}; 

現在zo將等於0,因爲你並沒有明確定義值,以及此後每次會比去年多了一個。

另請注意(由於語法突出顯示)dodo關鍵字保留爲do...while語句衝突。

+0

謝謝! 特別是爲了做提醒沒有,我仍然有錯誤 – user613326