2015-12-06 35 views
1

所以我只想插入一個值到我定義的表中,但它似乎並沒有工作。Lua table.insert不工作

如果我用這個代碼:

t = {1,2,3} 
table.insert(t, 9) 

我得到的是

LuaInterface.LuaScriptException:字符串 「主」]:2:試圖調用 場 '插入'(一無值)

是否有可能我使用的編譯器只是沒有這個功能?我真的不明白。如果有問題,我現在正在使用BizHawk Emulator進行編譯。

+0

嘗試'要求( 「表」)。插入(T,9)' –

回答

1

偶然得到「table」或「table.insert」被代碼覆蓋的地方?或者,也許表格庫沒有加載?

嘗試

調用之前
require("table") 

到table.insert,看看它的工作原理則

+0

如果全局變量'表「被覆蓋,那麼'require(」table「)'不足以恢復它。 –

+0

正確,package.loaded [「table」] = nil必須先執行(對於lua 5.2,否則_LOADED [「table」] = nil) – Ctx

+0

謝謝,「require(」table「)」工作! 由於上面發佈的代碼是整個文件中唯一的代碼,我很確定沒有任何內容被覆蓋。所以我猜測仿真器使用的是舊版本的LUA。 – Zelos