引言
本文分享了作者最近在实际项目中遇到一些问题,以及学到的一些新的设计方法,其内容主要关于Lua & C++
什么是lua_cfuntion?
lua_cfucnction,是指满足一定格式的C函数,其形式如下:
int XXX (lua_State * L);
返回值为int,参数为lua_State,这样的函数,经过lua_register注册之后,就可以在lua脚本中使用的C函数。lua与C++通过一个共用的堆栈来传递参数数据。
什么是lua_pcall() and lua_call()?
就是C++调用Lua函数的接口
如何使用lua_pcall和lua_cfuntion?
本文下面讨论的实现方法,仅简单利用lua_cfucnction和lua_pcall技术来实现。所以下面介绍的方法并不是最优化的,但可以完成相对复杂的功能。
主要结构如