C++: INHERITANCE, INTERFACES AND THUNKS
Many embedded C programmers still have the misconception that C++ leads to slow, bloated programs. This has even lead to a specific subset of the C++ standard being defined for embedded systems (EC++). This FUD (Fear, Uncertainty and Doubt), which may have had limited foundation over a decade ago, is misplaced for the core aspects of C++ (Classes, Inheritance and Dynamic Polymorphism) and given a modern C++ cross-compiler it is also misplaced for the more advanced features (templates and exception handling). In this paper we will focus on the performance and memory of the core aspects, but specifically look at the use of multiple inheritance in an embedded environment.