Lua:函数表

发布于 2024-11-05 05:25:26 字数 286 浏览 0 评论 0原文

我试图在表中存储不同的函数,但不知何故它不会按照我想象的方式工作。这是我的“代码”

fn_table = { aFun1=print, aFun2=self:getSpeedLevel, aFun3=.... }

现在的问题是,我可以使用 printassert 等内置函数来执行此操作,但它无法与我的其他函数一起使用已经有了。

我收到错误:“...函数参数应位于 '}' 附近

是否也可以存储这些函数?

I am trying to store different functions in a table, but somehow it won't work the way I thought it would. Here is my 'code'

fn_table = { aFun1=print, aFun2=self:getSpeedLevel, aFun3=.... }

The problem now is that I can do this with the built in functions like print, assert and so on but it wont work with the other functions I've got.

I get the error: "... function arguments expected near '}'

Is it possible to store these function as well?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

宁愿没拥抱 2024-11-12 05:25:26

aFun2 = self:getSpeedLevel 是一个语法错误,这就是 Lua 抱怨的地方。尝试aFun2 = getSpeedLevelaFun2 = self.getSpeedLevel(假设self是一个表)。 PiL 书中的面向对象编程章节提供了更多将函数存储在表中的示例。

aFun2 = self:getSpeedLevel is a syntax error and that is what Lua complains about. Try aFun2 = getSpeedLevel or aFun2 = self.getSpeedLevel (assuming that self is a table). The Object-Oriented Programming chapter in the PiL book has more examples of functions being stored in tables.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文