Benjamin

静以修身,俭以养德,非澹薄无以明志,非宁静无以致远。
随笔 - 386, 文章 - 0, 评论 - 196, 引用 - 0
数据加载中……

lua_tinker和c++

lua_tinker包括一个.h文件与.cpp文件,实现C++与LUA之间相互调用。采用C++模板实现,绑定函数的参数个数有限制,可以自己扩展。函数绑定到lua中的名称可以自定义,可以与C++中不同,例如加上特定前缀或后缀。除了函数绑定还lua tinker还封装了函数调用,读取设置变量等操作。lua_tinker也是用C++对lua api的封装,lua_tinker可以不作任何修改就可以支持lua5.1。
如果支持lua5.2,需要对其进行修改, 方法是用lua_setglobal和lua_getglobal来替换原来的lua_settable和lua_getglobal。另外lua5.2把lua_open这个宏去掉了,需要直接使用luaL_newstate接口。
在linux平台的编译命令示例:g++ sample3.cpp lua.h lualib.h lua_tinker.cpp -llua
这是lua_tinker的使用例子和源码lua_tinker




posted on 2015-02-03 23:18 Benjamin 阅读(953) 评论(0)  编辑 收藏 引用 所属分类: 杂谈


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理