En
programación orientada a objetos (POO), una
función virtual o
método virtual es una función cuyo comportamiento, al ser declarado "virtual", es determinado por la definición de una función con la misma cabecera en alguna de sus subclases. Este concepto es una parte muy importante del
polimorfismo en la POO.