【发布时间】:2013-11-29 15:44:52
【问题描述】:
我使用枚举来声明变量的类型。但是,我在每个字符串上都收到一条错误消息:Error: expression must be an integral constant expression。如果我将"" 更改为'',五个字符或以上的单词会给出错误:Error: too many characters in a character constant。我该怎么办?
typedef enum
{
INT = "int",
STRING = "string",
BOOLEAN = "bool",
CHARACTER = "char",
DOUBLE = "double",
FLOAT = "float",
LONG = "long",
SHORT = "short"
} variable_types;
【问题讨论】:
-
使用整型常量表达式,正如编译器错误提示的那样。
-
@juanchopanza - 我该怎么做?
-
@user2976089 最简单的方法?省略字符串。
-
检查here
-
我们可以用
static const std::strings 的类来代替枚举吗?我开始回答这个问题,但我找不到使用这个的人的参考。