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...