我今天碰到了这个,我想知道这里有什么问题。
module example
public rel[str file, AstNode namespace] relFileNamespace;
public void InitGlobals()
{
relFileNamespace = {};
}
然后在控制台中:
rascal>import example;
ok
rascal>InitGlobals();
ok
rascal>relFileNamespace
|stdin:///|(0,13,<1,0>,<1,13>): Undeclared variable, function or constructor: relFileNamespace
如果我这样宣布它确实有效。
public rel[str file, AstNode namespace] relFileNamespace = {};
所以问题是,为什么必须在声明中初始化?
答案 0 :(得分:2)