tl:dr; making a class final
allows the compiler to save a vtable lookup in some (limited, slightly artificial) places where it couldn't before. No actual performance measurements.
I am sceptical. I'd understood vtable lookups to be extremely cheap on modern architecture; usually cheaper than the if
/ switch
statement you'd have to write as an alternative if you weren't using inheritance. And for really performance-sensitive code, you would never have used virtualized classes anyway. I'd like to see some proper performance results before mangling code and making maintenance difficult.