|
|
1
4
复杂的库API通常可以使用 SWIG . 在这种情况下,使用swig的一个优点是,很容易构建基于swig的包装器,以便在 18 major languages 其中包括Lua、Perl、Python、Ruby和Java等。
如果Lua是您的首选(而且可能是唯一的)关注点,那么我建议您学习使用
不幸的是,Lua5.1与5.0最大的不同之处在于动态加载模块(C和Lua),其中
下面是一个完整的(如果很小)例子,用于Lua5.1中的C库。我们从实现C文件中的包装开始:
特别注意,唯一需要导出的函数是
require "sm" print(sm.sin(sm.pi/3), sm.cos(sm.pi/3));
这个示例虽然没有经过测试,但应该编译并运行。对于一个完整的示例,包装来自
C++类的包装方法在原理上是相似的。每个Lua可调用包装函数都需要一个可以映射到
|
|
|
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 1 年前 |
|
|
Anka Hanım · 关于结构和动态数组地址的问题 1 年前 |
|
|
tTt · 使用堆栈中的值重新分配指针 1 年前 |
|
|
manuel · 现代C中空指针的替代方案++ 1 年前 |