【问题标题】:Accessing Tables In Lua From C++从 C++ 访问 Lua 中的表
【发布时间】:2016-04-11 01:43:05
【问题描述】:

我在尝试从 C++ 访问的 Lua 中有一个全局表。 这基本上是我想要做的:

卢阿:

myTable = {}
myTable[1] = 1

C++:

lua_State* L = luaL_newstate();
luaL_openlibs(L);
lua_pcall(L, 0, 0, 0);
lua_State* L2 = luaL_newstate();
luaL_dofile(L, "luaScript.lua");

LuaRef myTable= getGlobal(L, "myTable");

cout << myTable[0];

我的cout 出现错误,提示:

错误 C2593 'operator

但我认为这些错误不是问题。

如何访问该值?

【问题讨论】:

    标签: c++ lua luabridge


    【解决方案1】:

    您必须明确地将您的 myTable[] 转换为

    你的 Lua 数组从 1 开始,但你访问的是 [0]。

    【讨论】:

    • 你说得对,但我猜这不是更深层次的问题。我将更新我的问题以反映您的更改。
    • myTable[0] 好吗?不应该是 [1] 吗?
    • 你说得对,我的问题出在其他地方。我会将其标记为未来观众的答案。谢谢!
    • 不客气。以后的观众请注意,您必须恢复原来的问题,否则答案不匹配。
    • 另一个快速的问题。如果表格看起来像这样 test = {} test[1] = 1 test[2] = 2 globalVolumeContainer[1] = test 我怎样才能访问一个值?我以为 globalVolumeContainer[1][1];会工作吗?
    猜你喜欢
    • 1970-01-01
    • 2014-11-10
    • 2012-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-08
    相关资源
    最近更新 更多