我将Eclipse Android SDK更新到版本3.2,现在我遇到了常量的编译错误。
这曾经有用:
static const X = 2;
static const X_SQUARED = X * X;
但是现在我在第二行遇到了编译错误:
error: initializer element is not a compile-time constant
这是故意改变吗?或者我的环境可能有问题?
谢谢!
答案 0 :(得分:2)
RenderScript是C99,而不是C ++。 C99要求所有静态初始化都是常量表达式(整数常量,浮点常量,枚举常量,字符 常量和sizeof表达式。)
RenderScript编译器必须对此更加严格。这段代码永远不应该编译(实际上,不能用常规的C99编译器编译)。