Les fonctions de la STL sont plutôt rapide car toutes les méthodes sont inlinée. Donc même si ça peut paraitre lourd, si le compilo fait bien son boulot, les performances sont au rendez vous. Si on utilise n´importe comment la STL sans trop savoir les opérations effectuées par celle-ci, alors on peut avoir des pertes de performance.
Quand on utilise la POO " C-style" ( sans polymorphisme d´éxécution [signalé par le mot-clef virtual]), il n´y a aucune perte de performance par rapport au C, il peut même y avoir un gain.
La POO avec polymorphisme d´éxécution est un peu, et seulement un peu, couteux car les appels de fonction ne sont plus directs et les fonction ne sont plus inlinées. Il convient donc de connaitre les mécanismes ud polymorphisme d´éxécution pour en pas avoir de trop grandes pertes. Quand on a le choix, et que les performances sont importantes, on choisira d´utiliser le polymorphisme de compilation ( les templates, comme la STL) plutôt que le polymorphisme d´éxécution.
Mais la POO autorise de nouvelles architectures impossible à mettre en place en C, peut-on vraiment comparer les performances ?