Está en la página 1de 2

FUNCIONES AMIGAS Y FUNCIONES VIRTUALES

FUNCIONES AMIGAS
Se puede concluir que a pesar de las grandes ventajas que tiene la encapsulación, en muchas
ocasiones es necesario dotar a la programación orientada a objetos de una mayor flexibilidad. Esto
se consigue por medio de las funciones friend. Una función friend de una clase es una función
que no pertenece a la clase, pero que tiene permiso para acceder a sus variables y funciones
miembro privadas por medio de los operadores punto (.) y flecha (->), sin tener que recurrir a las
funciones miembro públicas de la clase. Si una clase se declara friend de otra, todas sus funciones
miembros son friend de esta segunda clase. El carácter de friend puede restringirse a funciones
concretas, que pueden ser miembro de alguna clase o pueden ser funciones generales que no
pertenecen a ninguna clase.
Problema: Crear una clase llamada Temperatura que permita inicializar la temperatura mínima,
máxima y actual. Definir una función amiga que reciba dos objetos de la clase Temperatura y retorne
la temperatura promedio actual.

CASTRO MONTOYA EDUARDO


FUNCIONES AMIGAS Y FUNCIONES VIRTUALES

FUNCIONES VIRTUALES
Una función virtual es una función miembro que se espera volver a definir en clases derivadas.
Cuando se hace referencia a un objeto de clase derivada mediante un puntero o una referencia a la
clase base, se puede llamar a una función virtual para ese objeto y ejecutar la versión de la clase
derivada de la función.
Las funciones virtuales garantizan que se llame a la función correcta para un objeto, con
independencia de la expresión utilizada para llamarla.

CASTRO MONTOYA EDUARDO

También podría gustarte