offsetof/baseof springs to mind, for intrusive stuff.

You can sort of emulate it using pointers to member but it quickly loses its appeal.