design-patterns - 如何使用变量名称而不覆盖模块名称?

标签 design-patterns lua

math.random() 开箱即用,但如果我将 math 设置为其他内容,它就会中断

local math = 1 + 1 -- 将数学设置为其他值 math.random() -- 中断

有没有办法让 math.random() 在设置 local math = 1 + 1 时仍然有效?

我有一堆带有点表示法函数的模块,例如 coord.get()offset.get()

但是像 coordoffset 这样的基本词就无法用于变量名,这很烦人

最佳答案

您始终可以再次请求该模块:

require("math").random()

由于模块已经加载,所以这并不是很昂贵。

关于design-patterns - 如何使用变量名称而不覆盖模块名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57113247/

相关文章:

java - 如何解决优先队列池?这是最好的选择吗?

java - 工厂模式和 builder 模式的结合?

lua - 将外部指针包装到 SWIG 数据结构中

lua - 如何从表成员引用lua表成员?

c++ - 如何在不弄乱图书馆内部访问的情况下正确设计图书馆的外部访问?

c++ - 存储一个函数c++,稍后调用

objective-c - 没有协议(protocol)的 iOS 委托(delegate)?

error-handling - lua协程的堆栈是隐式输入的,而没有调用恢复?

Lua:在等待输入时运行代码

Lua:有没有办法获得表元表