fflua更新-增加对引用的支持
简介:
fflua 发布了有段时间了,很多网友都用了,并且提供了一些很好的反馈。其中一个就是c++接口注册到lua中时,对引用的支持。这样使用起来更加方便。
原有方式:
fflua 中注册c++的类用如下方式:
class base_t { public: base_t():v(789){} void dump() { printf("in %s a:%d\n", __FUNCTION__, v); } int v; }; //! 注册基类函数, ctor() 为构造函数的类型 fflua_register_t<base_t, ctor()>(ls, "base_t") //! 注册构造函数 .def(&base_t::dump, "dump") //! 注册基类的函数 .def(&base_t::v, "v"); //! 注册基类的属性
当c++类注册成功,后lua代码中可以操作类对象的指针,并且可以作为参数传递给c++的接口:
void dumy_base(base_t* p) { printf("in %s begin ------------\n", __FUNCTION__); } fflua_register_t<>(ls).def(&dumy, "dumy"); //! 注册静态函数
有网友跟我反映,原来的接口很多都是使用引用作为参数,为了接收lua传过来的参数,还得需要重新写一个函数,比较麻烦,于是fflua增加了对引用的支持:
void dumy_base(base_t& p) { printf("in %s begin ------------\n", __FUNCTION__); } fflua_register_t<>(ls).def(&dumy, "dumy"); //! 注册静态函数
总结:
最新代码:
https://github.com/fanchy/fflua
更多精彩文章 http://h2cloud.org
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?