Как уже отмечали другие, в стандарте C ++ отсутствует понятие "vtable", поскольку это просто почти универсальная техника реализации, во многом похожая на искажение имен.
Если вам нужна возможность переопределять функции на лету на скомпилированном языке, вас может заинтересовать Common Lisp. Должны быть и другие, но единственные другие языки, о которых я могу думать, имеют либо статическое наследование и функции, либо интерпретируются с большими затратами на производительность.