传递给函数的字符串,作为表接收
在一个文件中,我有以下代码:
module( "command" )
local Commands = { }
function Add( cmd, funccallback )
print(cmd)
Commands[ cmd ] = funccallback
end
Add("internal", function ( ) end )
在另一个文件中,我有以下代码:
command:Add("external", function( ) end )
这会产生以下输出:
>internal
>table: a008247
为什么在第二种情况下参数被解释为表?
In one file, I have the following code:
module( "command" )
local Commands = { }
function Add( cmd, funccallback )
print(cmd)
Commands[ cmd ] = funccallback
end
Add("internal", function ( ) end )
in another I have the following:
command:Add("external", function( ) end )
this results in the following output:
>internal
>table: a008247
Why is the argument interpreted as an table in the second case?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
因为您使用
:
而不是.
调用它。当您调用这样的内容时:这是语法糖:
您的意思可能是
command.Add
。Because you called it with
:
instead of.
. When you call something like this:That is syntactical sugar for:
You probably meant
command.Add
.