没有事先声明的错误使用枚举?

use*_*326 5 c++

我正在从一本书中学习C++,以下示例在代码块中不起作用.我的编译器出错了:

'Days'没有事先声明的情况下使用枚举

有人能在这里给我带来好处吗?

#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;
}
Run Code Online (Sandbox Code Playgroud)

chr*_*ris 14

您的使用enum不正确.你的括号应该是括号:

enum Days {zo,ma,di,wo,do,vr,za};
Run Code Online (Sandbox Code Playgroud)

现在zo将等于0,因为您没有明确定义一个值,之后每个都将比最后一个更多.

还要注意(很容易,由于语法突出显示)dododo...while语句保留的关键字冲突.