cocos2dx以及quick-x lua绑定C++对象的注意事项

这么多天实验了很多次使用tolua++.exe进行C++对象绑定到lua,失败了很多次,然后翻了下书,看了手动绑定的步骤才恍然大悟,马上上手绑定成功。下面是我的一些个人总结,有不完善的地方,请指正。

1.第一点要明确,绑定到lua,究竟是做什么,基于什么原理。lua采用了共享堆栈来跟C进行交互,绑定到lua就是要将相应的对象函数压到堆栈里。

2.cocos2dx使用一个luaToCpp类进行集中管理,而相应的,build.bat (sh)这个文件,如果不移动路径,就不用修改批处理文件的内容。相应的,Cocos2d.pkg这个文件是集中管理pkg的一个文件,使用默认路径进行绑定时,需要把自己写的pkg文件包含在cocos2d.pkg文件里即$pfile "mypkg.pkg",

3.pkg文件里写好类接口之后,运行批处理文件,然后到luaToCpp.cpp里去搜一下,类的名字,如果能搜到,说明已经绑定成功,如果此时在lua文件里新建类对象,发现报空值错误,那么请检查下,头文件路径是否正确,可在luaToCpp.cpp里修改,然后重新编译

额,quick-x的绑定过程跟cocos2dx基本一样,差别就是,quick-x加了一层,需要写到xx.tolua文件而不是pkg文件了

下面是转的一个链接:http://blog.csdn.net/aryang/article/details/9611883

猜你喜欢

转载自blog.csdn.net/hookby/article/details/25955343