¡Bienvenido a la Guía de C++
C++ es un lenguaje de programación de propósito general que ha sido fundamental en el desarrollo de sistemas operativos, aplicaciones de alto rendimiento, videojuegos y más. 🖥️ Con C++, puedes escribir código eficiente y tener un control preciso sobre el hardware, además de aprovechar las ventajas de la programación orientada a objetos. ⚙️ ¡Es una habilidad esencial para cualquier desarrollador de software! 💻
Introducción a C++
C++ es un lenguaje de programación orientado a objetos que extiende las capacidades de C. Es ampliamente utilizado en desarrollo de sistemas, videojuegos, aplicaciones de alto rendimiento y más. Aquí tienes un ejemplo básico:
#include <iostream>
int main() {
std::cout << "¡Hola, Mundo!" << std::endl;
return 0;
}
Clases y Objetos
En C++, las clases son la base de la programación orientada a objetos. Aquí tienes un ejemplo de cómo definir una clase y crear un objeto:
#include <iostream>
class Persona {
public:
std::string nombre;
int edad;
void saludar() {
std::cout << "Hola, mi nombre es " << nombre << " y tengo " << edad << " años." << std::endl;
}
};
int main() {
Persona persona1;
persona1.nombre = "Juan";
persona1.edad = 25;
persona1.saludar();
return 0;
}
Herencia en C++
La herencia permite crear nuevas clases a partir de clases existentes. Aquí tienes un ejemplo de herencia:
#include <iostream>
class Animal {
public:
void comer() {
std::cout << "Este animal está comiendo." << std::endl;
}
};
class Perro : public Animal {
public:
void ladrar() {
std::cout << "¡Guau guau!" << std::endl;
}
};
int main() {
Perro miPerro;
miPerro.comer();
miPerro.ladrar();
return 0;
}
Polimorfismo en C++
El polimorfismo permite que objetos de diferentes clases sean tratados como objetos de una clase base. Aquí tienes un ejemplo usando funciones virtuales:
#include <iostream>
class Animal {
public:
virtual void hacerSonido() {
std::cout << "Este animal hace un sonido." << std::endl;
}
};
class Perro : public Animal {
public:
void hacerSonido() override {
std::cout << "¡Guau guau!" << std::endl;
}
};
class Gato : public Animal {
public:
void hacerSonido() override {
std::cout << "¡Miau miau!" << std::endl;
}
};
int main() {
Animal* miAnimal1 = new Perro();
Animal* miAnimal2 = new Gato();
miAnimal1->hacerSonido();
miAnimal2->hacerSonido();
delete miAnimal1;
delete miAnimal2;
return 0;
}
Manejo de Memoria en C++
En C++, puedes manejar memoria dinámica usando new y
delete. Aquí tienes un ejemplo:
#include <iostream>
int main() {
int* numero = new int(10);
std::cout << "Número: " << *numero << std::endl;
delete numero; // Liberar la memoria
return 0;
}
STL (Standard Template Library)
La STL es una colección de plantillas de clases y funciones que proporcionan estructuras de datos y algoritmos comunes. Aquí tienes un ejemplo de uso de un vector:
#include <iostream>
#include <vector>
int main() {
std::vector<int> numeros = {1, 2, 3, 4, 5};
for (int i = 0; i < numeros.size(); i++) {
std::cout << numeros[i] << " ";
}
return 0;
}
Ejercicios Prácticos
Aquí tienes algunos ejercicios para practicar tus habilidades en C++:
Ejercicio 1: Clase Punto
Crea una clase Punto que represente un punto en un
plano 2D con coordenadas (x, y). Añade un método para calcular la
distancia entre dos puntos.
Ejercicio 2: Herencia
Crea una clase base Vehiculo y dos clases derivadas
Coche y Moto. Implementa métodos
específicos para cada tipo de vehículo.
Ejercicio 3: STL
Usa un std::map para almacenar nombres de personas y
sus edades. Luego, imprime el contenido del mapa.