Saltar al contenido principal
eLearner.app
Módulo 4 · Lección 1 de 29/18 en el curso~12 min
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 ;:

Code
#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

Ejercicio#cpp.m4.l1.e1
Intentos: 0Cargando...

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.

Cargando editor...
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

Ejercicio#cpp.m4.l1.e2
Intentos: 0Cargando...

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.

Cargando editor...
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