摘要:
也许你已经了解了FFLUA的设计原则,即:当在编写C++代码时,希望使用LUA就像使用C++本地的代码一样,而在lua中操作C++的数据和接口的时候,又希望C++用起来完全跟table一个样。这样可以大大减轻程序开发的工作,从而把精力更多放大设计和逻辑上。那么做到如何lua才算像C++,C++做到如何才算像lua呢?我们知道二者毕竟相差甚远,我们只需要把常见的操作封装成一直即可,不常见操作则特殊处理。常见操作有:
C++ 调用lua函数,FFLUA已经封装了call函数,保障了调用lua函数就像调用本地C++函数一样方便
C++注册接口和对象到lua中,lua中操作对象就像操作table一样直接。
C++中除了自定义对象,STL是用的最多的了,C++希望lua中能够接收STL的参数,或者能够返回STL数据结构
Lua中只有table数据结构,Lua希望C++的参数的数据结构支持table,并且lua可以直接把table作为返回值。
C++的指针需要传递到lua中,同时也希望某些操作,lua可以把C++对象指针作为返回值 阅读全文