Недавно я столкнулся с ошибкой компоновщика С++, которая была для меня новой.
libfoo.so: undefined reference to `VTT for Foo'
libfoo.so: undefined reference to `vtable for Foo'
Я распознал ошибку и исправил свою проблему, но у меня все еще есть вопрос: что такое VTT?
Кроме того: для интересующихся проблема возникает, когда вы забываете определить первую виртуальную функцию, объявленную в классе. Vtable входит в блок компиляции первой виртуальной функции класса. Если вы забудете определить эту функцию, вы получите ошибку компоновщика, что она не сможет найти vtable, а не намного более дружественную для разработчиков, не может найти эту функцию.