目前我正在尝试设置Sol2,我试图使用需要访问另一个lua文件的lua文件。示例:见下文 一般来说我对Sol2没有任何问题,但是当我尝试一起使用两个文件时,我的程序停止工作。 Lua代码应该是正确的(...?,我也尝试使用'test2 = a.x.test'和'require('a')'),所以我猜我需要改变一些因为Sol2?
a.lua
--------
local x = {
test = 1
}
b.lua
--------
local a = require 'a'
local options = {
test2 = a.test
}
C ++:
sol::state lua;
lua.script_file("b.lua");
int x = lua[b][test2];
谢谢!
答案 0 :(得分:0)
在文件外部看不到局部变量。所以:
将此行附加到a.lua
:
return x
将此行附加到b.lua
:
return options
现在你需要修复C ++方面。可能是这样的,但我不知道Sol:
auto result = lua.script_file("b.lua");
int x = result["test2"];