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

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.

主站蜘蛛池模板: 涪陵区| 浦城县| 乌兰浩特市| 浪卡子县| 绥阳县| 泰和县| 台中市| 大冶市| 马公市| 灵川县| 吴江市| 綦江县| 双辽市| 九龙坡区| 贡山| 龙游县| 长武县| 宝坻区| 定远县| 綦江县| 桂林市| 甘肃省| 青龙| 玉门市| 洱源县| 买车| 哈密市| 库尔勒市| 莱州市| 资源县| 会昌县| 当涂县| 石狮市| 张掖市| 伽师县| 开江县| 民乐县| 东源县| 安福县| 南涧| 新郑市|