国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Cocos2d-x的內存管理總結

2020-04-11 11:50:44
字體:
來源:轉載
供稿:網友

Cocos2d-x引擎的核心是用C++編寫的,那對于所有使用該引擎的游戲開發人員來說,內存管理是一道繞不過去的坎。

關于Cocos2d-x內存管理,網上已經有了許多參考資料,有些資料寫的頗為詳實,因為在內存管理這塊我不想多費筆墨,只是更多的將思路描述清楚。

一、對象內存引用計數

Cocos2d-x內存管理的基本原理就是對象內存引用計數,Cocos2d-x將內存引用計數的實現放在了頂層父類CCObject中,這里將涉及引用計數的CCObject的成員和方法摘錄出來:

復制代碼 代碼如下:

class CC_DLL CCObject : public CCCopying
{
public:
   … …
protected:
    // count of references
    unsigned int        m_uReference;
    // count of autorelease
    unsigned int        m_uAutoReleaseCount;
public:
    void release(void);
    void retain(void);
    CCObject* autorelease(void);
    … ….
}

CCObject::CCObject(void)
: m_nLuaID(0)
, m_uReference(1) // when the object is created, the reference count of it is 1
, m_uAutoReleaseCount(0)
{
  … …
}

void CCObject::release(void)
{
    CCAssert(m_uReference > 0, "reference count should greater than 0");
   

主站蜘蛛池模板: 迭部县| 福清市| 九龙城区| 德格县| 铜川市| 马山县| 清苑县| 大名县| 兴和县| 仙居县| 赤峰市| 永和县| 曲靖市| 丹巴县| 邵东县| 太仓市| 子洲县| 合川市| 大余县| 大名县| 望奎县| 亚东县| 微博| 松江区| 泰宁县| 雅江县| 苏尼特右旗| 澎湖县| 山阴县| 嘉定区| 山丹县| 百色市| 大悟县| 全椒县| 磴口县| 依安县| 乳山市| 罗城| 城固县| 阿瓦提县| 灌云县|