<分区>
我通常使用枚举来保持两个数组的一致性,方法是像下面这样定义它们:
enum foo {
ZERO = 0,
ONE,
TWO,
};
int int_array[] = {
[ZERO] = 0,
[ONE] = 1,
[TWO] = 2
};
char *str_array[] = {
[ZERO] = "ZERO",
[ONE] = "ONE",
[TWO] = "TWO"
};
此代码在 c
上编译良好,但在 cpp
模块中使用时会抛出以下错误。
expected primary-expression before ‘[’ token
错误是针对两个数组声明中的每一行。这里有什么问题?