在大型 Lua 表中使用冒号和点号声明函数的性能影响

我已经养成了使用冒号声明几乎所有模块函数的习惯,而不是使用点号,但我并不经常使用面向对象编程并且几乎从不使用 self。 如果表非常大,每次调用函数时传递 self 似乎是多余的。

这样做是否具有性能影响?是否值得将所有函数声明更改为使用点号?

点赞
用户4984564
用户4984564

将单个附加表引用传递到函数中并不会对性能产生太大影响。因为表不会被复制,所以表的大小并不重要。

与性能无关,这似乎是一种编程风格的问题。在模块函数中使用冒号语法非常不常见,因为这种习惯用法显然是用于实际方法调用的。因此,在不需要使用它的库中使用它将对任何其他Lua程序员看起来非常令人困惑。

2021-02-15 06:32:32