lua 能不能调用带引用类型参数的C函数
lua吧
全部回复
仅看楼主
level 1
jcweiran 楼主
比如这样的C函数 int test(int &x, int v)
lua怎么调用
2014年08月06日 11点08分 1
level 8
首先,你这个不是C函数,因为C语言没有引用这个概念。
其次,lua没法调用你这个函数,因为在lua语言层面上没有与引用对应的数据类型,所以lua层根本没法传递这种参数。
最后,相信有别的途径解决你的问题。
2014年08月06日 12点08分 2
好吧。。。还是找别的方法了
2014年08月06日 12点08分
回复 jcweiran :用指针完全可以代替引用啊。
2014年08月06日 12点08分
回复 ks_isaf :int test(int *x, int v) 这样的也不行啊
2014年08月06日 12点08分
回复 jcweiran :不能直接调用的。这个你要了解一下lua是如何调用c函数(有一定规则的C函数)的,然后用lua格式的c函数对你的函数进行封装。
2014年08月06日 12点08分
level 5
lz能不能详细讲一下luabind是怎么配置的?
2014年08月09日 00点08分 3
level 11
指针是可以传递进去的,但你这个方法不行,指针可以传递进去的原因是在lua内部有映射,即有个相应的指针处理元表在支持。像你这种,可以写个代理类传递进去。还有一种,就是用LuaState* L作为参数,你自己通过对栈的操作来处理。
2014年08月11日 02点08分 4
1