Performance
Pointing aliasing can slow you down ~30% compared to FORTRAN
Operator overloading can cause severe performance degradation
- temporaries creation/destruction, memory allocations, …
- inefficient use of registers
- Can be overcome by “template metaprogramming” techniques, but requires modern compilers
Good OO practice usually has more function calls
- Generally not an issue - the small function calls can be inlined or don’t take much aggregate time
Virtual function vs. function calls is a non-issue
- it’s very cheap, and if you are using virtual functions you have to do the if somewhere anyway