c++ - 组合 Lua 二进制文件

标签 c++ lua compilation binary-data

我有几个 Lua 脚本,它们都需要 一些定义一些通用函数的脚本。这造成了一种类似于 C 中的 header 系统的情况,我在 C 中一遍又一遍地重新编译相同的代码。这是不可取的,因为这些脚本是在运行时编译的。我已经有一个系统可以在编译脚本后缓存二进制文件,但我想知道是否有办法编译 required 脚本和分别使用它们的脚本,然后将它们组合起来。

最佳答案

如果那些调用 require 的 Lua 脚本在相同的状态下执行,那么“required”脚本只执行一次,因为它们的返回值缓存在 package.loaded 表中。如果您从在不同 Lua 状态下执行的脚本中“要求”它们,那么您可以组合并预编译脚本,然后加载它们一次;你可以使用 luac 来做到这一点。

关于c++ - 组合 Lua 二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42465010/

相关文章:

c++ - Qt 测试当前对象/小部件是否存在

html - 电晕sdk网站背景

c - 使用vscode,为什么同时包含 "iosteam"和 "stdio.h"时无法编译?

c++ - c++ 重定向输入

c++ - 内存地址可以存储为整数类型吗?

string - 在 Lua 中拆分多字节字符串

gcc - 由于警告,CMake 无法检测 pthreads

linux - 生成错误 : QT Headers before X11

c++ - 右值引用、复制和移动

Lua 等价于 Object.assign