最近需求所迫, 终于着手传说中的 lua 了.
折腾了4天, 总算大概搞明白了用法.
细节咱们就别谈了, 直接说项目里怎么跑起来.
准备工作
我们需要一系列繁琐的前奏.
tolua++: 这是必备工具. tolua++下载地址
准备一个测试类.
// MyClass.h class MyClass { public: MyClass() {}; int foo(int i); }; // MyClass.pkg $#include "MyClass.h" class MyClass { MyClass(); int foo(int i); };
这里需要注意, 我没有给出 .cpp, 因为此时不需要管这东西.
注意看 .pkg 的格式, 它是一个类描述, 它有自己的一套规则, 具体去其他地方查查~
生成文件
接下来就是用 tolua++ 来生成文件.
命令行下:
tolua -n packname -o D:\luaMyClass.cpp D:\MyClass.pkg
packname: 包名,
后面是输出路径, 输入路径.
在 .cpp 中有一个 tolua_[包名]_open() 函数.
该函数是导入的关键.
在 AppDelegate.cpp 中, 加入下面代码.
auto plua = engine->getLuaStack()->getLuaState(); tolua_test_open(plua);
然后咱们就可以在lua中随意使用了.
PS
很久没更新博客, 今天状态很差, 写的很没劲~
各位凑合着看吧...