我正在Eclipse中从Garmin构建monkeyc (ConnectIq)项目,我想在我的代码中使用const
而不是var
,但似乎const
关键字不被编译器识别。会出什么问题呢?
const PI = 3.14;
编译器报错:
BUILD: ERROR: C:Path:155 missing '}' at 'const'
如果我把const
改为var
,一切都很顺利。哪里会有问题?从Garmin文档来看,MonkeyC应该有const
关键字。
这既不是bug也不是特性,它只是语言实现的方式。程序员指南明确地说
常量是用
const
关键字声明的命名的、不可变的值。这对于存储可能在整个代码中重复使用的不变值非常有用。常量必须在模块或类级别声明;它们不能在函数中声明。
我意识到const
关键字不能在函数内,它必须作为类变量。然后它就起作用了。我只是不知道这是一个bug还是一个功能。