Está en la página 1de 3

Método destructor:

En C++ podemos definir un método que se ejecute cuando se elimine el objeto y en forma
automática.

tiene las siguientes características:

 Tiene el mismo nombre de la clase más el carácter “~” al principio.


 Es el último método que se ejecuta.
 Se ejecuta en forma automática.
 No puede retornar datos.
 Se ejecuta una única vez.
 No es obligatorio.

Método constructor:

Se ejecuta de manera automática al instanciar un objeto de una clase.


Tiene como finalidad la inicialización de las variables de la clase y
posiblemente ejecutar algunos de los métodos de la clase. Una clase
puede tener tantos constructores (sobrecargas) como el desarrollador lo
estipule.

La característica principal:

Es que su nombre es el mismo que el de la clase, es decir, son métodos


de la clase que se nombran igual que la clase, y que además no tienen
valor de retorno.

Las distintas sobrecargas del constructor de una clase van a depender


de las distintas combinaciones de parámetros de entrada de la función.
Cuando no se declara un constructor de manera explícita para una clase
entonces C++ se encarga de asignar un constructor implícito por defecto
a la clase. En esta sección se hará énfasis en 3 tipos de constructores:
constructor por defecto, constructor parametrizado y constructor de
copia.

Herencia

permite la reusabilidad de variables y funcionalidades que se han definido en


otras clases.

La herencia contribuye en cierto grado con la escalabilidad de una aplicación


ya que cuando se debe modificar o eliminar una variable o un método heredado
en todas las clases derivadas, entonces no es necesario que se haga
individualmente en cada clase sino que se hace directamente en la clase base
y las clases derivadas simplmente heredan la actualización de esos miembros.

La herencia en C++ se expresa en la implementación de una clase mediante el


uso del operador dos puntos : seguido del tipo de herencia (que lo veremos
más adelante) y del nombre de la clase base de la que se busca heredar.

Polimorfismo:

Es la capacidad que tienen ciertos lenguajes para hacer que, al enviar el mismo
mensaje (o, en otras palabras, invocar al mismo método) desde distintos objetos, cada
uno de esos objetos pueda responder a ese mensaje (o a esa invocación) de forma
distinta. Es la capacidad de manejar distintas clases heredadas de una
clase base de la misma forma.

¿Cuál es la diferencia entre una clase y un objeto?

Una clase es una estructura de programación definida por el usuario mientras


que un objeto es un tipo de dato que surge a partir de la clase de
programación.

Las clases se definen en el proceso de desarrollo mientras que los objetos se


crean en tiempo de ejecución, es decir cuando el programa está corriendo.

¿Qué es el tiempo de ejecución y el tiempo de compilación?

el tiempo de compilación, involucra la traducción de un lenguaje que los humanos


comprenden, o código fuente, al lenguaje que las computadoras entienden, o código
máquina.

El tiempo de ejecución : la computadora lee la traducción del código fuente para llevar
a cabo las tareas que el programador ha incorporado en el código. Cada vez que
alguien ejecuta el programa lo hace en tiempo de ejecución.
¿Cuándo se utiliza la palabra reservada VIRTUAL y cuando STATIC?

Una función virtual es una función que es declarada como 'virtual' en una clase
base y es redefinida en una o más clases derivadas. Además, cada clase
derivada puede tener su propia versión de la función virtual. Lo que hace
interesantes a las funciones virtuales es que sucede cuando una es llamada a
través de un puntero de clase base (o referencia). En esta situación, C++
determina a cuál versión de la función llamar basándose en el tipo de objeto
apuntado por el puntero. Y, esta determinación es hecha en 'tiempo de
ejecución'. Además, cuando diferentes objetos son apuntados, diferentes
versiones de la función virtual son ejecutadas. En otras palabras es el tipo de
objeto al que está siendo apuntado ( no el tipo del puntero ) lo que determina
cuál versión de la función virtual será ejecutada. Además, si la clase base
contiene una función virtual, y si dos o mas diferentes clases son derivadas de
esa clase base, entonces cuando tipos diferentes de objetos están siendo
apuntados a través de un puntero de clase base, diferentes versiones de la
función virtual son ejecutadas. Lo mismo ocurre cuando se usa una referencia
a la clase base.

Static : La palabra clave static puede usarse para declarar variables y funciones
en el ámbito global, el ámbito de espacio de nombres y el ámbito de clase.
También se pueden declarar variables estáticas en el ámbito local

¿Qué es el overloading en C++?

es un aspecto del Polimorfismo que nos permite manejar diferentes objetos con
los mismos métodos o propiedades. capacidad de definir varias funciones
diferentes con el mismos nombre

También podría gustarte