This example doesn't have any destructors because there are no pointer members.
In general, however, the destructors execute in reverse order. First the derived class destructor, then the base class destructor.