3
回答
关于tolua++的c++与lua问题

    问题:

    现在要将一个c++的类接口暴漏给lua,实现在lua文件中可以调用该接口。

    我的做法是,一个.pkg文件定义要暴漏给lua的类接口,然后用tolua++工具运行命令(如:tolua++ -o LuaScript.cpp LuaScript.pkg),生成一个LuaScript.cpp(自定义)文件,就可以了。

    但是,在一些情况下,却是非常麻烦的。 比如在使用cocos2d-x的时候,一些cc的类已经通过tolua++生成了一个LuaCocos2d.cpp文件。这时候我要按如上方法做的话,要不就是要修改cc的LuaCocos2d.pkg文件来统一生成,或者说把我自己另外生成的LuaScript.cpp中相关类的代码一项一项拷LuaCocos2d.cpp(这些是我在网上看到的一些方法),坑死了。。。

    敢问诸位大侠有没有比较简便的方法?之前在另一家公司是有的,。。呵呵 之前太菜没有注重这个问题。求救!!



举报

以下是问题补充:

  • @消失了雨痕 :同志们在线等啊,别只是看一下就不回复啊。 哪里描述不清晰或什么的都可以给点意见啊,谢谢谢谢! (5年前)
共有3个答案 最后回答: 5年前

弄一个all.pkg

其他pkg都扔在这个pkg里面. 只生成一个文件.

--- 共有 3 条评论 ---
消失了雨痕谢谢!! 5年前 回复
autocoder回复 @消失了雨痕 : 他的假如叫all.pkg 你的叫my.pkg 直接再弄一个 allex.pkg 把2个pkg扔到里面不就OK了. vs自动生成 只是用一下 event事件里面调用一个批处理即可. 5年前 回复
消失了雨痕是的,我知道这样 。 引擎的类有一个all.pkg,我自己的test.pkg直接加入到all.pkg?上次看csdn一个博客说这样是不行的。。。 也没验证。。。 但这样也还是要用命令(dos窗口运行tolua++)生成代码啊。。。我想是不是可以通过vs环境设置自动使用tolua++生成呢? 5年前 回复

还是轻量级的好

lua_tinker

--- 共有 2 条评论 ---
红尘一人Lua_tinker的好处是就两个文件 一个.h 一个cpp 很方便集成到项目中;其他几个我试了下,好像都比较麻烦,后面就没整了;不过tinker不支持gcc,。。。。哎 lua还没看完 就是想用 不知道怎么用 用起来感觉很牛逼的样子 5年前 回复
消失了雨痕呵呵,听说是蛮低端的了tolua++ 现在luabind, luaplus比较火,lua_tinker...有待研究 5年前 回复
顶部