Good class design wont suffer from these overheads. If your classes are transparent enough the compiler can make its way to the base classes and optimise away the virtual functions. I'm working on a HAL for arduino, it uses nothing but classes. In some cases the classes are entirely optimised out and direct port mapping is generated in its place, this is using 4 tiers of inheritance.
Check out 'Curiously recurring template pattern' ( Static polymorphism ) and Template Meta-programs.