前言
Cocos2d-x的核心框架是由C++来实现的,然后通过LuaBinding转化为Lua API。
内存管理
如下Lua代码:
local luaScene = cc.Scene:create()
local luaSprite = cc.Sprite:create("hi.png")
luaScene:addChild(luaSprite)
内部调用了C++代码:
auto cppScene = cocos2d::Scene::create();
auto cppSprite = cocos2d::Sprite::create("hi.png");
cppScene::addChild(cppSpri
Cocos2d-x Lua内存管理详解

本文介绍了Cocos2d-x引擎中基于C++的内存管理机制,特别是与Lua交互时如何进行引用计数和自动回收池的使用。通过`retain()`、`release()`和`autorelease()`等方法管理对象生命周期,结合`AutoReleasePool`,实现对象的自动管理。当对象计数器减为0时,对象会被销毁。同时,文章提到了Lua对象在C++对象销毁后的处理过程。
最低0.47元/天 解锁文章
1096





