我想在表中添加一个变量,并在单个变量中查看表中所做的更改。我认为这个问题很突出,因为当我将变量插入表时,它会通过值传递。
现在我将表中的一个元素设置为nil,但是我想要的变量并未对其进行修改。如何将值关联起来以实现下一个程序打印" nil"而不是"不是零"。
tab = {}
x = 2
y = 4
table.insert(tab, x)
table.insert(tab, y)
for i = 1 , #tab do
tab[i] = nil
end
if x == nil then print("is nil")
else print("is not nil") end
解决:
这是解决方案。将变量转换为表。问题是由于[1]指数,sintax变得丑陋。我会看看我是否可以隐藏这个,因为我将在我的脚本中使用这些变量,并且我不想一直使用[]索引只有一个变量。
tab = {}
x = {2}
y = {4}
table.insert(tab, x)
table.insert(tab, y)
for i = 1 , #tab do
tab[i][1] = nil
end
if x[1] == nil then print("is nil")
else print("is not nil") end
答案 0 :(得分:0)
你不能在lua中这样做。不是这样的。唯一具有引用语义的是table和userdata。
如果您要将表格分配到tab
,则可以从原始变量和tab
中查看该表格的字段。