Yoiks. The code in the article is certainly not a good example of proper C++ class implementation. Mea culpa.
The destructor is, in fact, empty. The class makes no memory allocations, and no explicit deletions or releases need to be made. The only pointer used is a pointer to the frame hierarchy which is owned by someone else and "given" to the animation controller to check consistency between animation frame-names and hierarchy frame-names, and which provides access to store the results in that hierarchy.
The pointers used in some of the function calls are used to return values and don't represent allocated objects.
AnimController's members are protected says that it is meant to be used a base class... Was this the intention?
Nope. Just bad style, I'm afraid.
I'll get rid of the destructor and the protected status.
EDIT: Revised as indicated, and notes regarding the Rule of Three added as a caveat should an implementation of the class need to add a destructor.
Edited by Buckeye, 21 March 2014 - 02:41 PM.
Please don't PM me with questions. Post them in the forums for everyone's benefit, and I can embarrass myself publicly.
You don't forget how to play when you grow old; you grow old when you forget how to play.