Curso de Introducción a C++ Moderno

¿Por qué aprender C++ moderno?
C++ es uno de los lenguajes de programación más potentes y versátiles que existen. Presente en sistemas operativos, motores de videojuegos, software de simulación, aplicaciones embebidas y de alto rendimiento, sigue siendo una elección fundamental en la industria del software.
El estándar moderno de C++ (desde C++11 en adelante, con especial atención a C++17 y C++20) ha transformado el lenguaje profundamente: ahora es más expresivo, más seguro y más fácil de usar que sus versiones anteriores, sin perder la potencia que lo caracteriza.
¿Qué aprenderás en este curso?
Este curso cubre los fundamentos de la programación con C++ moderno, desde cero hasta los conceptos más avanzados:
- Fundamentos del lenguaje: tipos de datos, variables, operadores y control de flujo
- Programación estructurada con funciones, punteros y referencias
- Programación orientada a objetos: clases, herencia y polimorfismo
- Uso de la STL (Standard Template Library):
std::vector,std::map,std::string… - Programación genérica con plantillas de función
- Gestión de errores mediante excepciones
- Trabajo con archivos
Repositorio
Curso
-
Fundamentos de la programación
-
Tipos de datos
- Tipos de datos fundamentales
- Tipos de datos carácter y booleano
- Tipos de datos numéricos y operaciones aritméticas
- Declaración e inicialización de variables
- Ámbito y duración de almacenamiento de variables
- Declaración e inicialización de constantes
- Conversión de tipos de datos
- Introducción a las cadenas de caracteres
- Conversión de cadenas de caracteres
- Entrada y salida estándar
- Ejercicios estructura secuencial
- Tipos definidos por el usuario:
enum class - Tipos definidos por el usuario:
struct
-
Control de flujo
- Operadores relacionales y lógicos
- Estructuras alternativas: if
- Estructuras alternativas: switch
- Ejercicios estructuras alternativas
- Estructuras repetitivas: while
- Estructuras repetitivas: do-while
- Estructuras repetitivas: for
- Uso específico de variables: contadores, acumuladores e indicadores
- Ejercicios estructuras repetitivas
-
Programación estructurada
- Introducción a la programación estructurada y uso de funciones
- Ámbito y duración de las variables en funciones
- Gestión de memoria con punteros
- Gestión de memoria con referencias
- Paso de argumentos a funciones
- Ejemplos de paso de argumentos a funciones
- Valores de retorno de una función
- Tipos de funciones: constexpr, inline, lambda y recursivas
- Organización del código en archivos (.h y .cpp)
- Ejercicios con funciones
-
Programación orientada a objetos
-
Estructuras dinámicas en la STL
- Gestión de memoria y estructuras dinámicas
- Cadenas de caracteres:
std::string - Arreglos:
std::array - Vectores:
std::vector - Listas:
std::list - Mapas:
std::mapystd::unordered_map - Algoritmos de la STL
- Ejercicios con
std::string - Ejercicios con
std::array - Ejercicios con
std::vector - Ejercicios con
std::list - Ejercicios con
std::mapystd::unordered_map
-
Introducción a la programación genérica
-
Excepciones: gestión de errores
-
Trabajo con archivos