Igor
если не используешь наследование, то это не ООП?
Ну интерфейсы у тебя тоже в виде таблицы виртуальных методов представляюься.
Если ты эмулируешь ООП в си или хаскеле и т.п., у тебя тоже рекорды функций повсюду бегают, которые и есть та же таблицы виртуальных методов, только в профиль