能否在LuaJIT的FFI中调用c命名空间下的函数实现复杂功能?

2026-04-01 20:320阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计206个文字,预计阅读时间需要1分钟。

能否在LuaJIT的FFI中调用c命名空间下的函数实现复杂功能?

我有大量C++代码,它们在命名空间中包含许多函数和类(例如,boost)。现在我将LuaJIT2作为脚本引擎嵌入,但找不到任何关于调用函数和使用命名空间中的其他功能的说明。那么,能否……

我有很多c代码,它们在命名空间中包含很多函数和类(例如,boost).
现在我试图将LuaJiT2作为脚本引擎嵌入,但我找不到任何关于调用函数和使用命名空间中的其他东西的东西.
那么,是否可以使用FFI将函数从c命名空间传递给LuaJIT? 您可以使用标准的Lua API将命名空间范围函数以及类静态函数公开给Lua.这与使用常规Lua解释器完全相同,因为LuaJIT与它兼容.

但是你不能使用FFI,因为FFI基于对头文件的基于C的解析.你正在使用C语法. FFI不是使用LuaJIT的唯一方式;它只是一个基于C.

使用Lua(Luabind,SWIG等)的任何C特定绑定API也可以与LuaJIT一起使用.

能否在LuaJIT的FFI中调用c命名空间下的函数实现复杂功能?

本文共计206个文字,预计阅读时间需要1分钟。

能否在LuaJIT的FFI中调用c命名空间下的函数实现复杂功能?

我有大量C++代码,它们在命名空间中包含许多函数和类(例如,boost)。现在我将LuaJIT2作为脚本引擎嵌入,但找不到任何关于调用函数和使用命名空间中的其他功能的说明。那么,能否……

我有很多c代码,它们在命名空间中包含很多函数和类(例如,boost).
现在我试图将LuaJiT2作为脚本引擎嵌入,但我找不到任何关于调用函数和使用命名空间中的其他东西的东西.
那么,是否可以使用FFI将函数从c命名空间传递给LuaJIT? 您可以使用标准的Lua API将命名空间范围函数以及类静态函数公开给Lua.这与使用常规Lua解释器完全相同,因为LuaJIT与它兼容.

但是你不能使用FFI,因为FFI基于对头文件的基于C的解析.你正在使用C语法. FFI不是使用LuaJIT的唯一方式;它只是一个基于C.

使用Lua(Luabind,SWIG等)的任何C特定绑定API也可以与LuaJIT一起使用.

能否在LuaJIT的FFI中调用c命名空间下的函数实现复杂功能?