A = {}
function A:text()
return 100
end
print(A["text"]()) -- prints "100"
----------------------------------
A = {}
function A:text(value)
return value
end
print(A["text"](100)) -- prints "nil"
Run Code Online (Sandbox Code Playgroud)
有没有办法可以将值作为参数传递并返回相同的值?我需要遍历5个函数...
如果你正确宣布你的功能,你可以.
function A:text(value)
Run Code Online (Sandbox Code Playgroud)
这创建了一个带有两个参数的函数.这:
是对此负责的.第一个参数是一个隐式声明的参数self
.第二是value
.此函数旨在被称为A:text(100)
或与A["text"](A, 100)
.
这些是类成员类函数.
你应该改为创建这样的函数:
function A.text(value)
Run Code Online (Sandbox Code Playgroud)
这将创建一个带有一个参数的函数.