官术网_书友最值得收藏!

What you get with Ref

With Ref you get managed objects. This means that Ref derived objects will have a reference count property, which will be used to determine whether an object should be deleted from memory or not. The reference count is updated every time an object is added or removed from a Cocos2d-x collection object.

For instance, Cocos2d-x comes with a Vector collection object that extends the functionality of the C++ standard library vector (std::vector) by increasing and decreasing the reference count when objects are added and removed from it. For that reason, it can only store Ref derived objects.

Once again, every Ref derived class can be managed the way things used to be managed in Objective-C before ARC- with retain counts and autorelease pools.

C++, however, comes packed with its own wonderful dynamic list classes, similar to the ones you would find in Java and C#. But for Ref derived objects, you would probably be best served by Cocos2d-x managed lists, or else remember to retain and release each object when applicable. If you create a class which does not extend Ref and you need to store instances of this class in a list container, then choose the standard library ones.

In the examples that follow in this book I will code primarily from within the framework, so you will get to see plenty of examples of cocos2d::Vector being used, for instance, but I will also use a std::vector instance or two in some of the games.

主站蜘蛛池模板: 湾仔区| 永顺县| 湘阴县| 安阳市| 阳西县| 迭部县| 五寨县| 报价| 黑山县| 台中县| 武威市| 临湘市| 土默特左旗| 辽宁省| 沧州市| 德安县| 天峻县| 茌平县| 天峻县| 资兴市| 蒙山县| 临湘市| 鄂温| 辛集市| 浦江县| 卓资县| 会同县| 天长市| 武功县| 寻乌县| 容城县| 宜宾县| 中方县| 黑河市| 江安县| 宁安市| 娱乐| 邹平县| 化州市| 黎城县| 永丰县|