如何定义LogLevel变量l?在C++中使用enum
目前,我有错误:
Error 3 error C2228: left of '.LogLevelDebug' must have class/struct/union
代码:
typedef enum LogLevel
{
LogLevelDebug = 0,
LogLevelError = 1,
LogLevelInfo = 2,
LogLevelTrace = 3,
} LogLevel;
int main()
{
logLevel l = LogLevel.LogLevelDebug;
}
我认为“logLevel l”需要是“LogLevel l”?另外,这个问题似乎更多地是枚举而不是工会。 – Serge 2014-12-02 17:31:31
这是一个枚举,而不是一个联盟。只是LogLevelDebug。 – gnasher729 2014-12-02 17:31:42
删除'typedef'。正如你发现的那样,C++并不需要它,让人困惑并且让事情变得困难。 – 2014-12-02 18:09:47