Comment les fonctions virtuelles et vtable sont-elles implémentées?

Nous savons tous quelles sont les fonctions virtuelles en C ++, mais comment sont-elles implémentées à un niveau profond? La vtable peut-elle être modifiée ou même directement accessible lors de l'exécution? La vtable existe-t-elle pour toutes les classes, ou uniquement celles qui ont au moins une...