Нет. По сравнению с другими затратами, такими как локальность памяти и согласованность кэша, разработка алгоритмов и языковая база (интерпретатор, VM, native), некоторые виртуальные функции являются довольно тривиальной стоимостью. Принципы ОО, такие как инкапсуляция, являются полностью операциями времени компиляции, и абстракция может быть достигнута бесплатно с помощью универсального программирования. Если вы не идете с ними слишком далеко, что в некоторых случаях совершенно неизбежно в языках, которые просто не имеют общего программирования, или если вы вызываете его в невероятно узком цикле, но в этом случае вы, вероятно, не найдете дешевая альтернатива.
Тот, кто говорил вам, что программисты, которые заинтересованы в производительности на C ++, не используют виртуальные функции, ошибался.