我有一种情况,我对表执行一些操作,将它们称为 T 和 V。我已经正确设置了元表并且一切都按预期工作。问题是我通常不需要计算的结果。所以不要写
for i=1,5 do
_=T+V
end
有没有办法让
for i=1,5 do
T+V
end
?
我没有使用 Lua 命令行,所以我不能只写 =T+V。
我有一种情况,我对表执行一些操作,将它们称为 T 和 V。我已经正确设置了元表并且一切都按预期工作。问题是我通常不需要计算的结果。所以不要写
for i=1,5 do
_=T+V
end
有没有办法让
for i=1,5 do
T+V
end
?
我没有使用 Lua 命令行,所以我不能只写 =T+V。
创建一个什么都不做的函数并将其传递给它:
function NOP() end
for i=1,5 do
NOP(T+V)
end
这还可以记录您的意图,而副作用就是您所追求的。
查看扩展 BNF 中 Lua 的语法,我看不到没有等号或其他东西的构造表达式(exp)的方法。
只有 4 种情况可以使用表达式 (exp):
分配一个值,例如p = exp
作为条件,例如while exp then
在函数调用中,即f(exp)
用于索引即t[exp]