c++数组初始化器.使用enum类型
C++ array initializer. Using enum type
class ARouter {
enum directions {north, neast, east, seast, south, swest, west, nwest};
static directions gon[] = {north, neast, nwest, east, west, seast, swest, south};
};
嗨,有人知道上面的代码是什么问题吗?
我从vc++ 2008Ex的第二行得到2个错误:
错误C2059:语法错误:'{'
错误C2334:在'{'之前的意外token(s);跳过显函数体
不能在类中这样定义变量
应该是这样的:
class ARouter {
enum directions {north, neast, east, seast, south, swest, west, nwest};
static directions gon[];
};
ARouter::directions ARouter::gon[] = {north, neast, nwest, east, west, seast, swest, south};
声明放在类体中;定义位于外部。请注意,您通常会将类体放在头文件中,而将定义放在源文件中。
相关文章:
- 是否可以从int转换为enum类类型
- 在一个模板函数中,若输入的类型是enum类,我该如何使用std::underlying_type
- 如何理解c++中在命名空间内部定义的枚举类型enum
- 将枚举类型保存在位字段 [dcl.enum] [class.bit] 中
- 在使用C 中使用多个三元运算符时,BOOL和ENUM类型超载的功能没有区分
- 缩写对成员函数期望引入类型(ENUM类)的论点
- "enum class"是C++中的类类型吗?
- 为什么C/C++会自动将char/wchar_t/short/bool/enum类型转换为int
- c++ Visual Studio, 'vc_attributes::YesNoMaybe' : 'enum' 类型重定义错误
- 我可以在DLL边界使用“enum class”作为函数的参数类型吗
- C++函数,接受enum并返回要在模板中使用的typedef类类型
- QMetaEnum和强类型enum
- 将Enum转换为布尔类型
- 相当于enum类型的boost::program_options::bool_switch
- 通过ENUM查找返回元组值(不同类型)的模板函数
- 是否可以将int(enum)映射为类型
- 在 QT 中,错误:ISO C++禁止转发对'enum'类型的引用
- c++数组初始化器.使用enum类型
- 指定枚举基础类型时的"ISO C++ forbids forward references to 'enum' types"
- 专门化仅适用于带有enum非类型模板参数的c++模板函数