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

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.

主站蜘蛛池模板: 沙田区| 施甸县| 西藏| 原平市| 泗阳县| 东乌| 桦甸市| 临城县| 宁强县| 连江县| 万荣县| 峡江县| 西宁市| 福建省| 封丘县| 金溪县| 革吉县| 喀什市| 邯郸县| 临江市| 河源市| 荥阳市| 昔阳县| 孟州市| 绥阳县| 土默特右旗| 庆城县| 鱼台县| 贺州市| 商洛市| 南安市| 响水县| 永德县| 高州市| 柘城县| 卓资县| 自贡市| 静乐县| 金堂县| 新竹县| 奉贤区|