【发布时间】:2017-01-13 23:01:17
【问题描述】:
我正在尝试将 Lua 5.2 嵌入到我的 C 程序中。
我想让 Lua 脚本能够require 并加载另一个脚本。怎么做?
假设 Lua 部分有这样的文件结构:
lua_script
- main.lua
+ utils
- custom_loader.lua
+ globals
- scene_globals.lua
- scene_levels.lua
main.lua 将尝试require 并从custom_loader.lua 导入函数,依此类推...
是否可以在不使用 C 语言编写某种包装器的情况下做到这一点? Lua 脚本可以自动加载它需要的所有内容吗?
(Ps。我现在真的需要沙盒,所以脚本可以做它想做的事。)
【问题讨论】:
-
我认为
require只是一个你可以随意定义的函数。 -
@KerrekSB 所以,我应该将 C 函数推送为
require并为脚本想要的每个文件执行luaL_loadfile()? -
是的,一种可能性是编写自己的搜索器系统来解析
require调用。但是使用内置设施可能会有更简单的解决方案。 -
require('lua_script.utils.custom_loader')
标签: lua