码迷,mamicode.com
首页 > 其他好文 > 详细

Cocos2d-x 笔记

时间:2014-09-15 13:03:09      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:style   os   ar   strong   sp   on   c   new   size   

1、工厂方法 是程序设计中一个经典的设计模式,指的是基类中只定义创建对象的接口,将实际的实现推迟到子类中。在这里,我们将它稍加推广,泛指一切生成并返回一个对象的静态函数。一个经典的工厂方法如同这样:

CCObject* factoryMethod() 
{  
    CCObject* ret = new CCObject();  
    //这里对ret对象进行必要的初始化操作  
    ret->autorelease();  
    return ret;  
}


2、关于对象传值

将一个对象赋值给某一指针作为引用的时候,为了遵循内存管理的原则,我们需要获得新对象的引用权,释放旧对象的引

用权。此时,release()和retain()的顺序是尤为重要的。当other和object实际上指向同一个对象时,第一个release()可能会触发该对象的回收,这显然不是我们想看到的局面,所以应该先执行retain()来保证other对象有效,然后再释放旧对象:

void SomeClass::setObject(CCObject* other) 
{  
    other->retain();  
    this->object->release();  
    this->object = other;  
}


3、

Cocos2d-x 笔记

标签:style   os   ar   strong   sp   on   c   new   size   

原文地址:http://my.oschina.net/Jacedy/blog/313635

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!