LuaInterface:如何访问多维 Lua 表?

我刚接触LuaInterface,有一个非常简单的问题:我如何从C#中访问多维Lua表中的数据?我成功读取了字符串和整数值,但是对于表格没有成功。我的目标是在(虚拟的)GridView中显示多维Lua表的内容。

很抱歉,我知道这是一个非常简单的问题,但是我找不到好的文档或可编译的示例项目。如果您认为我在此之前应该先阅读文档,请告诉我该去哪里找到相关文档。

谢谢, Michael

点赞
用户2039872
用户2039872

LuaInterface 将 Table 类型封装成 LuaTable 类型。因此,如果你在 Lua 中定义了一个多维表:

t = {}
t[1] = {}
t[1][1] = 888
ShowTable(t)     -- 假设 ShowTable 是一个 C# 函数

你可以使用以下代码在 C# 中访问 Lua 表:

public void ShowTable(LuaTable t)
{
    LuaTable t1 = t[1];
    Console.WriteLine(t1[1]);   // 应该显示 888
    t.Dispose();                  // 不要忘记清理从 Lua 发送到 C# 的表,否则会导致内存泄漏!
}
2013-03-23 08:27:57