gpt4 book ai didi

variables - 如何将空变量传递给Lua中的函数

转载 作者:行者123 更新时间:2023-12-04 14:45:54 25 4
gpt4 key购买 nike

我试图将空值传递给函数但失败了。这是我的设置;

function gameBonus.new( x, y, kind, howFast )   -- constructor
local newgameBonus = {
x = x or 0,
y = y or 0,
kind = kind or "no kind",
howFast = howFast or "no speed"
}
return setmetatable( newgameBonus, gameBonus_mt )
end

我只想传递“种类”并希望构造函数处理其余部分。喜欢;
 local dog3 = dog.new("" ,"" , "bonus","" )

或者我只想通过“howFast”;
 local dog3 = dog.new( , , , "faster")

我用 "" 都试过了没有,给出错误:

unexpected symbol near ','

最佳答案

nil是 Lua 中表示空的类型和值,所以不是传递空字符串 ""或者什么都没有,你应该通过nil像这样:

local dog3 = dog.new(nil ,nil , "bonus", nil )

注意最后一个 nil可以省略。

取第一个参数 x例如,表达式
x = x or 0

相当于:
if not x then x = 0 end

也就是说,如果 x两者都不是 false也不是 nil , 套 x使用默认值 0 .

关于variables - 如何将空变量传递给Lua中的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19749691/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com