C++与Lua相互调用例子
lua和c / c++的数据交互通过栈进行,操作数据时,首先将数据拷贝到"栈"上,然后获取数据,栈中的每个数据通过索引值进行定位,索引值为正时表示相对于栈底的偏移索引,索引值为负时表示相对于栈顶的偏移索引,索引值以1或 - 1为起始值,因此栈顶索引值永远为 - 1, 栈底索引值永远为1 。 “栈"相当于数据在lua和c / c++之间的中转地。每种数据都有相应的存取接口
主要文件,CppAndLuaCallTest.cpp和test.lua
- C++加载Lua文件,调用Lua代码
- C++加载lua代码的同时注册C++方法,在Lua中调用注册的C++方法
- 编写导出方法,生成dll,Lua调用dll导出的C++方法