Добрый день! Заинтересовала подробная информация по низкоуровневой реализации виртуальных функций в разных языках программирования и в различных компиляторах. Т.е. реализации виртуальных таблиц (или, если есть какие-то альтернативные механизмы, тоже будет интересно узнать).
В целом ясно, что виртуальная таблица — это некая таблица соответствия между "индексом функции" и указателем на функцию, где "индекс функции" — числовой идентификатор функции в рамках иерархии наследования, генерируемый компилятором. Но вот как это реализовано на практике? Используются ли там просто массивы и порядковые номера функций, или какие-то хеш-таблицы, или что-то еще?