中易网

如何将C++对象传给lua使用

答案:5  悬赏:70  
解决时间 2021-02-11 17:02
如何将C++对象传给lua使用
最佳答案
对象无法传
你看Lua的教程就知道了
Lua支持的不是C++ 是C 而且不是所有的C都支持
本身Lua是用标准C语言开发 所以也只能实现C语言的功能 C++就已经超出范围了
所以要把对象放进去 必须按照一定的格式 逐个把函数和参数放进去 再到Lua按顺序逐个取出
全部回答
进来学习一下
首先要把你的表放到一个全局变量 然后在c++里使用getglobal 获得这个变量 压入一个key 取出对应刚才key对应的值 百度知道不能帖地址 不然会立即被吞 要是还是不会的话留邮箱我把地址发你
可以传递。我自己的项目也在做这个。 不过完全用lua的C API写起来比较痛苦,它是基于栈操作的,一会儿push, 一会儿pop, 很容易把头都搞大了。而且lua不是天生支持面向对象,要实现类的抽象还需要在表和metatable上捣鼓。 不过有很多实现这个功能的库,比如luabind, 用现成的库是最直接的方式。
直接传很麻烦. 到lua官网下载SLB库,此库不需要像别的那样要下载Boost库.直接可用. 用法是有些细节的.我这里简单解释 比如有个类 class CA { public : int fun1(float a); } 在.h里加上 SLB3_DECLARATION(CA,"classca",policy::Default) 你在cpp里加上 SLB3_IMPLEMENTATION(CA , c) { c.set("fun1",&LBPreParam::fun1); } 这样,这个类和 函数就被传入lua,在lua里也能用了.
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
向大大内衣
请问南师专转本在哪报名,在哪上课?
高分重谢,湖南碧桂园招聘,我应聘了碧桂园的
高一英语He‘d like to sleep with the windo
谁是卧底中女友怎么形容
嘉腾美食怎么去啊,有知道地址的么
《华丽的外出》中在酒吧里唱的歌名字叫什么?
加拿大签证中心太慢想快点办好加拿大签证怎么
运行中的发电机突然脱网,怎么处理
橄榄核手串怕热吗,比如40度温度。
写论文采用的调查数据要表明来处吗?来源不明
有一点我不解。欢乐斗地主有一件很无奈的事。
唐人服装城地址在什么地方,想过去办事
百分之五的碳酸氢钠补液,会增加酸还是碱?!
哈尔滨 从公路大桥到南极书城怎么走?
推荐资讯
火星英语词汇周计划怎么下载音频
每次都是为了攻略目标死亡,让攻略目标痛不欲
帅哥帅的理由,从哪几点能判断呢?例如 眼睛大
手持机读取rfid 能穿透金属么
良成广告工厂怎么去啊,有知道地址的么
青岛即墨家装市场有哪些?分别在哪里?
浦发信用卡是和购买的产品一起寄送吗
我是孩子的法定监护人爷爷奶奶有权剥夺吗?
子产祠园地址在什么地方,想过去办事
九分之八—六分之一+三分之二 简便运算
万寿镇这个地址在什么地方,我要处理点事
山西大学工程学院电话多少?
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?