2017-10-11 184 views
0

我試圖一次迭代多個變量,這些變量存儲在一個很長的數組中。爲了初始化它們,我使用循環遍歷每個變量,將每個變量設置爲0。使用:array[count] = 0它只會改變表索引的值。我該如何在表格中設置這個變量,比如獲取裏面存儲的變量並更改它,而不僅僅是給定索引處的表格值?Lua:存儲在數組中的變量

+3

我不明白你在說什麼。一些例子? –

+0

Lua中沒有參考類型,例如, C++'int&a = b'。所以一旦你將某些東西拷貝到表格中,它就會「忘記」它來自哪裏,並且失去與原始變量的所有連接。 –

+0

@HenriMenke哦,那麼有沒有其他方法來迭代變量? – sirsnow

回答

2

你可能想存儲領域在一個Lua表:

a = { current = 4, first = 2, last = 10 } 

然後你可以設置

a.current = 6 

,並遍歷所有領域:

for k,v in pairs(a) do 
    print(k,v) 
end 

或清除他們與

for k in pairs(a) do 
    a[k]=0 
end