Le 14 octobre 2026, Remy Porter a raconté une anecdote C++ concernant le collègue de Mandy. Celui-ci avait adopté l’héritage virtuel comme règle par défaut et l’appliquait systématiquement.

En C++, l’héritage virtuel traite le problème du diamant lié à l’héritage multiple. A est la classe de base. B et C dérivent de A, tandis que D hérite des deux. Sans héritage virtuel, D contient deux copies internes de A et de ses membres. Avec `class B : public virtual A`, D ne conserve qu’une seule copie de A. Le mécanisme n’a d’importance que lorsqu’une classe peut avoir des classes dérivées.

Cette condition n’existe pas dans l’exemple. `SomeSpecificDerivedClass` est déclarée `final`, donc aucune classe ne peut en hériter. Le mot-clé `virtual` dans l’héritage depuis `SomeBaseClass` ne change donc rien.