Lets say class C inherits from B and B inherits from A.
But Z doesnt inherit from any of A,B,C.
Now when I call exit(), let's say I have some cleanup code
I want to run that depends on data in B and in Z.
Thus, I need to know which of B or Z will be destroyed first.