我尝试编写一个国际象棋引擎,但下面的代码很难理解。我特别不理解等式表达式后的逗号。
enum {
A1 = 21, B1, C1, D1, E1, F1, G1, H1,
A2 = 31, B2, C2, D2, E2, F2, G2, H2,
A3 = 41, B3, C3, D3, E3, F3, G3, H3,
A4 = 51, B4, C4, D4, E4, F4, G4, H4,
A5 = 61, B5, C5, D5, E5, F5, G5, H5,
A6 = 71, B6, C6, D6, E6, F6, G6, H6,
A7 = 81, B7, C7, D7, E7, F7, G7, H7,
A8 = 91, B8, C8, D8, E8, F8, G8, H8, NO_SQ, OFFBOARD
};
答案 0 :(得分:1)
枚举是枚举的简写。如果您有一系列定义,其值彼此相继,您可以使用枚举自动递增值而不是手动定义每个值 =符号指示开始枚举的编号,可以在同一个枚举中多次设置,每次都以指定的数字重新启动枚举。
请参阅下面的代码中的注释,以进一步解释这一点。
enum {
/* A1=21 implies B1=22, C1=23,... */
A1 = 21, B1, C1, D1, E1, F1, G1, H1,
/* A2=31 restarts the previous enumeration at 31, so B2=32, C2=33,... */
A2 = 31, B2, C2, D2, E2, F2, G2, H2,
/* And so on, A3=41,B3=42,C3=43... */
A3 = 41, B3, C3, D3, E3, F3, G3, H3,
A4 = 51, B4, C4, D4, E4, F4, G4, H4,
A5 = 61, B5, C5, D5, E5, F5, G5, H5,
A6 = 71, B6, C6, D6, E6, F6, G6, H6,
A7 = 81, B7, C7, D7, E7, F7, G7, H7,
A8 = 91, B8, C8, D8, E8, F8, G8, H8, NO_SQ, OFFBOARD
};
答案 1 :(得分:0)
枚举类型允许我们为相关想法列表创建自己的符号名称。枚举类型的关键字是枚举。例如,我们可以为true和false
创建枚举类型enum Security_Levels
{
black_ops,
top_secret,
secret,
non_secret
};
这是你可以在C
中初始化枚举的方式