In my experience in object oriented C programming I have seen two ways to implement derived classes.
First Method, have a definition of the pa
The first method is hideous and it hides important information. I'd never use it or allow it being used. Even using a macro would be better:
#define BODY int member1; \ int member2; struct base_class { BODY };
But method 2 is much better, for reasons others have pointed out.