c++函数向lua注册的核心目的只有一个: 将需要在lua中调用的c++函数, 转换为 统一类型的lua c function....tolua++的方式相对简单直接, 通过自动生成大量的中间代码来将c++函数转换为lua c function, 生成的代码量虽然比较多, 但对比用模板的方式, 因为不需要考虑模板的包装, 小的功能扩展会简单直白不少....
1.2 属性的处理
这部分的实现基本都严重依赖下一节中c++对象到userdata的包装, 核心功能是依托于自定义的meta get/set方法, 完成对userdata中对应C++对象某成员变量的获取....
1.3 c++对象-> userdata
这部分更多的是作为一个对象容器载体, 然后通过meta table来方便lua访问这个载体, 主要提供函数获取, 属性获取等功能, 基本上每个bridge...__call 用于直接在lua中构造一个对应的c++对象, 我们将class table作为自己的meta table设置后, 也会将这个meta table暴露到_G上, 如上例中的Vector3,