Thanks.
It is interesting that according to the research I have done on this, C++ implements inheritance in a similar manner. That was actually the point of the code in the book; showing that inheritance is really just a set of pointers that point to the different class (struct) definitions. You just don't have to use the cast operator since the compiler does that for you.
Until inheritance finally makes it into FreeBasic, I think this could be useful.