Comprende los Términos y Conceptos de POO
Los términos y conceptos de POO (Object Oriented Programming, Programación Orientada a Objetos) rompen con cierto esquema, dando lugar a una nueva idea: el objeto. Dicho objeto es una abstracción en la que se unen sentencias y datos, de tal forma que a un objeto solo lo van a poder tratar los métodos definidos para él, y estos métodos están preparados para trabajar específicamente con él.
Este grado de compenetración evita que un método pueda tratar datos no apropiados, o bien que unos datos puedan ser tratados por un método no adecuado, ya que la llamada a cualquier método ha de ir siempre precedida del objeto sobre el que se quiere actuar, y este sabe si ese método se ha definido o no para él. C++ es un lenguaje que contiene estos y otros conceptos de POO.
Encapsulación
Este concepto permite tener un control de acceso selectivo tanto a los miembros como a los métodos, de tal forma que desde fuera del objeto sólo se pueda acceder a los métodos e identificadores que permita el creador del objeto.
Herencia
Permite la reutilización y la extensión del código. Permite diseñar nuevas clases a partir de otras ya existentes, pudiéndose además extender sus métodos (cambiar su semántica en la clase que hereda).
Polimorfismo
Permite tratar de forma genérica objetos de distintas clases, ahorrando así código y proporcionando simplicidad. Por tanto, trata de forma genérica objetos de distintos tipos derivados de una misma clase de objetos.
Constructores y Destructores
Un constructor es un método que se ejecuta automáticamente cuando se define o se crea un objeto, y su función es inicializar el objeto y prepararlo para realizar las operaciones necesarias.
Un destructor es un método que se ejecuta automáticamente cuando un objeto queda fuera del ámbito en el que se creó, y su función es destruir el objeto, liberando cualquier asignación dinámica de memoria que se haga.
El objeto puede tener o no definidos explícitamente el constructor y el destructor, o tener varios constructores.