Lecciones del módulo (1/2)
Clases y Objetos
La Programación Orientada a Objetos (OOP) es uno de los paradigmas fundamentales de C++. Permite agrupar datos y funciones en entidades individuales llamadas clases.
Una clase funciona como un blueprint (plantilla), mientras que un objeto es una instancia concreta de esa clase.
Sintaxis básica de una class
En C++, se utiliza la palabra clave class. A diferencia de otros lenguajes, en C++ las clases terminan obligatoriamente con un punto y coma ;:
#include <iostream>
#include <string>
class Player {
// Di default, tutti i membri di una classe sono privati
private:
std::string name;
int score = 0;
public:
// Metodi pubblici per accedere o modificare i dati privati
void setName(std::string newName) {
name = newName;
}
void addScore(int points) {
score += points;
}
void display() {
std::cout << name << " ha " << score << " punti!" << std::endl;
}
};
int main() {
Player p; // Creazione di un oggetto di tipo Player
p.setName("Marco");
p.addScore(15);
p.display();
return 0;
}
Access Specifiers: public y private
El encapsulamiento consiste en ocultar los detalles de implementación interna de un objeto, exponiendo solo una interfaz controlada.
C++ gestiona este control mediante los especificadores de acceso:
private: miembros accesibles solo dentro de las funciones miembro de la clase misma.public: miembros accesibles desde cualquier parte externa del programa que instancie el objeto.
Pruébalo tú mismo
Define una clase Rectangle con dos miembros privados enteros width y height. Añade un método público void setDimensions(int w, int h) para establecerlos y un método int getArea() que devuelva el área (width * height). En el main crea un rectángulo, establece las dimensiones en 5 y 4, y imprime su área.
Mostrar pista
Usa los especificadores de acceso `private:`y`public:`. Recuerda cerrar la clase con un punto y coma `;` después de la llave.
Solución disponible después de 3 intentos
Define una clase Counter con un miembro privado count inicializado en 0. Añade los métodos públicos void increment() y int getCount(). En el main crea un objeto Counter, increméntalo dos veces y imprime el valor obtenido.
Mostrar pista
En C++ moderno puedes inicializar los miembros de datos directamente en la clase: `int count = 0;`.
Solución disponible después de 3 intentos