In what way can “STL” be considered a performance hit? It looks like you just threw out every C++-related word you know.
Similarly, virtual function calls on modern CPUs are essentially free if the branch predictor can predict correctly, the usual case.
FUD from the '90s is way past its sell-by date.