Basically a destructor is code that is ran when you delete the object. If you're allocated any dynamic memory for this object, for example, you will want to put the code that frees the memory in the destructor. You can put it anywhere really, as long as it gets done, but it's just neater and more organised in there.
But despite what that book
implies, destructors
don't do that automatically (ie without any code from you) so watch out!