2010-02-01 152 views
3

在Lua中寫一個函數,它創建兩個表格。我希望將表格分配給值名稱,​​並添加一個x,並添加一個y。例如,如果名稱是行,它會創建兩個表linex和liney,但我無法弄清楚如何去做。以下顯然不起作用(並且僅用於顯示目的),但我將如何去做這件事?動態分配表變量?

function makelinep(x,y,minrand,maxrand,name,length) 
    name..x = {} 
    name..y = {} 

後來我希望在寫入值之後訪問「linex」和「liney」。

回答

5

如果您在全局命名空間,希望這些你會使用

_G[name..'x']={} 
_G[name..'y']={} 

對於你代替_G使用_M的模塊。

+0

完美的作品,我似乎無法將值插入表中,但怎麼做呢? (在同一函數中)table.insert(name ..「x」,count,x) 不起作用。 謝謝:D – 2010-02-02 07:41:36

+1

名稱..「x」不是表格,而只是一個帶有表格名稱的字符串。在上面的例子中,_G [name ..'x']是表,所以正確的語法是table.insert(_G [name ..'x'],count,x) – 2010-02-02 10:16:27

+0

啊,有道理!非常感謝:D – 2010-02-02 19:34:32