Virtual functions and multiple inheritance don’t show up in most classes I write – but when I need them, I need them.
Virtual functions, plus: move functions with movable parents and class members
Polymorphism is , essentially, using the same word to mean different things. We’ve been doing it all along. Consider the operator +. We use it for adding ints or doubles or strings. These are conceptually similar, but they’re done very differently by the machine.
Another example might be a function start, which could apply to a car, a plane, or a lawn mower. In each case, the ...