【发布时间】:2015-12-01 15:02:33
【问题描述】:
我正在尝试在 C++ 中使用枚举
现在,当我将枚举放在枚举声明之上时,它就可以工作了。但是,如果我先声明枚举类型,则会收到错误“'states' 没有命名类型”。
作品
enum states
{
DEMO, STATE1, STATE2
};
states currentState;
不起作用
states currentState;
enum states
{
DEMO, STATE1, STATE2
};
错误
error: 'states' does not name a type :states currentState
我最近才开始编写 Arduino 代码,而我在 C# 或 Java 中从未遇到过这个问题。
【问题讨论】:
-
为什么你不能按照它的工作方式来做呢?
-
对于不起作用的部分可以使用前向声明
enum states;。 -
因为我喜欢将我的声明放在我的函数和/或枚举之上。如果这是 C++ 中的一件事,那就有点令人失望了
-
这与枚举无关。您根本不能在 C++ 中使用任何以前未声明过的名称。
-
如果像我这样的问题因为太简单而被否决,我对这个网站的社区感到非常失望。每个人都太他妈的脾气暴躁了,如果你不喜欢这个问题,请继续前进,有些人还不知道一切。