Lua中要使用c++函数 对象和调用成员函数,能够使用sol2库c++
sol2库主要使用 模版元编程来生成代码,编译时间比较长,也能够只使用sol2的 stack 相关API,减小模版生成时间编程
导出的基本流程:函数
1: LuaState 初始化oklua
2: 初始化sol2的state,能够使用sol2的 state_view 接口,和现有的lua API协同工做对象
3:注册不一样的类和函数接口
sol2 new_usertype 绑定特定的c++类型到lua中, 能够将成员函数 以及c++ lambda 表达式,存储到table中编译
sol2 table 获取某个table ,设置table的 某个变量为c++ 函数,将c++函数绑定到 Lua中table
不管是c++类型,仍是lua全局状态,sol2都是一个table变量
经过设置table的 成员变量来绑定 lambda