【发布时间】:2017-08-25 07:55:24
【问题描述】:
我已经定义了以下枚举:
typedef enum {
F105 = 0x00,
F164 = 0x10,
F193 = 0x20,
F226 = 0x30,
F227 = 0x40
}BOARD_TYPE;
为了使代码可读,我想在使用枚举成员之一时使用枚举名称。像这样:
void do_work(uint8_t board_type) {
if (board_type == BOARD_TYPE.F164) {
// Do stuff...
}
}
现在,这不能编译。我收到一条错误消息“'BOARD_TYPE' 之前的预期表达式”。
那么,使用枚举成员同时引用枚举名称以提高代码可读性的正确方法是什么?
【问题讨论】:
-
如果只是为了便于阅读,您可以在声明其值时包含枚举名称,例如
typedef enum { BOARD_TYPE_F105 = 0x00 } BOARD_TYPE。 -
@LethalProgrammer 你肯定是说
board_type = F164