标签: lua lua-table
tbl1 = {1} tbl2 = tbl1 table.remove(tbl2,1) print(tbl1[1]) -- >> nill
上面的例子是我的代码中的问题的简化,通过从tbl2中删除索引,它也从tbl1中删除,是否有理由发生这种情况?
答案 0 :(得分:3)
Lua中的变量是对象的引用,因此a=b将名为a的变量设置为引用b引用的对象。如果b是一个表,那么在分配后,a和b都指向同一个表对象。
a=b
a
b