请教,我想直接给c++的导出类添加lua方法,因为这个导出的module就是一个table,所以我感觉不应该有什么问题的。
例如直接给cc.Sprite添加一个function
cc.Sprite.b = function () end
或者
cc.Sprite.b = {}
均会报: stack overlow错误
不解 求各位大神帮忙看一下
刚刚发现getmetatable(Sprite).b = {}是可以的
不明白为什么。。
请教,我想直接给c++的导出类添加lua方法,因为这个导出的module就是一个table,所以我感觉不应该有什么问题的。
例如直接给cc.Sprite添加一个function
cc.Sprite.b = function () end
或者
cc.Sprite.b = {}
均会报: stack overlow错误
不解 求各位大神帮忙看一下
刚刚发现getmetatable(Sprite).b = {}是可以的
不明白为什么。。
如果你用的是Quick-x的最新版本,应该已经没有此问题。
如果是其他版本的Quick-x,或者是cocos2d-x,请参考以下文章:
http://my.oschina.net/SunLightJuly/blog/262880
下午实验的结果就是和metatable有关 怀疑有循环调用 晚上准备仔细跟一下代码的 有你的分析 更好了 谢谢啦