Lua变量中的特殊字符

3

我正在使用Lua,并想使用所谓的"本地变量",它们将是只读的,在其前面加上"$"标记,例如$variable。但是在我所找到的资料中,Lua只接受正常的字母字符和下划线作为变量名。是否有一些方法可以修改Lua代码来实现这个功能?


你可以修改元表来阻止变量的更改,这将是实现此目的的一种简单方法。例如:http://lua-users.org/wiki/ReadOnlyTables 或者如果这对您有用:http://www.google.com/url?sa=t&rct=j&q=lua%20read%20only%20variables&source=web&cd=2&ved=0CFcQFjAB&url=http%3A%2F%2Flua-users.org%2Flists%2Flua-l%2F2002-01%2Fmsg00402.html&ei=p9gRUPemHsfeiALtrICADg&usg=AFQjCNGXfMula1LA1howLMMhNcZdJKx-LQ - TheZ
为什么不使用配置文件呢? - Mike Corcoran
3个回答

2
考虑对您的lua源代码进行预处理,使用简单的解析器将$identifier替换为__NATIVE.identifier,然后将修改后的源代码发送到常规的lua解释器。然后实现__NATIVE作为一个全局表,具有适当的元表来实现您所需的行为。

1
你可以使用元表来防止变量被更改。Lua源代码在MIT下是自由的,这对于几乎任何用途都是宽容的,但我没有关于如何修改它以允许$的具体建议。

0

1
URL已经损坏。 - Joe Shanahan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接