C++ Orientado a Objetos
Clases, objetos, herencia, polimorfismo y los pilares de la POO en C++.
Clases y Objetos
Clases, Structs y Encapsulacion
Comprende la diferencia entre struct y class, los especificadores de acceso, la encapsulacion, las funciones miembro const, los miembros estaticos y la inicializacion de agregados moderna.
Constructores, Destructores y la Regla de 0/3/5
Domina el ciclo de vida completo de los objetos C++ — desde la construccion hasta la destruccion — y aprende cuando escribir (o no escribir) funciones miembro especiales.
Semantica de Copia: Profunda vs Superficial
Aprende la diferencia entre copias superficiales y profundas, como implementar operaciones de copia correctas para clases que poseen recursos, y el idioma de copiar-e-intercambiar.
Herencia y Polimorfismo
Herencia y Relaciones Es-Un
Aprende la herencia publica, el encadenamiento de constructores, el problema del slicing, la herencia multiple y el problema del diamante — y cuando la herencia es apropiada.
Funciones Virtuales, vtables y Polimorfismo
Profundiza en el polimorfismo en tiempo de ejecucion: como funciona el despacho virtual internamente, cuando usar override y final, clases abstractas y RTTI.
Sobrecarga de Operadores
Aprende como sobrecargar operadores correctamente — miembro vs no miembro, formas canonicas, operadores de stream, el operador spaceship de C++20 y trampas comunes.
Diseno POO
Miembros Estaticos, Singletons y PIMPL
Explora los miembros estaticos, el patron Singleton de Meyers, el patron Factory, y el idioma PIMPL para estabilidad ABI y aislamiento en tiempo de compilacion.
Composicion, Interfaces y Diseno
Domina la composicion sobre la herencia, las interfaces abstractas puras, los principios de diseno (ISP, DIP), std::variant como alternativa a la herencia, y la eliminacion de tipo.