📚 Librerías en C++
📖 Introducción
Las librerías en C++ son conjuntos de funciones y clases que permiten reutilizar código para tareas específicas, ahorrando tiempo y esfuerzo. En C++, se incluyen mediante la directiva #include. Existen dos tipos principales de librerías: las estándar, que vienen con el compilador, y las librerías de terceros, que se deben agregar manualmente.
🛠️ Librerías estándar
Las librerías estándar de C++ proporcionan herramientas esenciales y vienen incluidas con el compilador. Algunas de las más comunes son:
iostream: para operaciones de entrada y salida.cmath/math.h: para cálculos matemáticos avanzados.cstdlib/cstdlib.h: para funciones de conversión y generación de números aleatorios.ctime/time.h: para funciones de tiempo.
Para incluir una librería estándar en tu código, usa #include y el nombre de la librería entre corchetes (<>):
#include <iostream>#include <cmath>
int main() { std::cout << "Raíz cuadrada de 25: " << sqrt(25) << std::endl; return 0;}En este ejemplo, usamos iostream para imprimir un mensaje en pantalla y cmath para calcular la raíz cuadrada.
🌐 Librerías de terceros
Las librerías de terceros son desarrolladas fuera del estándar de C++ y deben agregarse manualmente al proyecto. Un ejemplo común incluyen OpenCV para procesamiento de imágenes.
🛠️ Cómo crear una librería
Para crear una librería propia en C++, sigue estos pasos:
-
Crear el proyecto:
- En Code::Blocks o tu IDE preferido, elige el tipo de proyecto
Static library. - Elimina el archivo
main.ccreado por defecto.
- En Code::Blocks o tu IDE preferido, elige el tipo de proyecto
-
Crear archivos de la librería:
- Crea un archivo de encabezado
.h(Archivo > Nuevo > Archivo… >C/C++ header file) y un archivo de código fuente.cpp(Archivo > Nuevo > Archivo… >C/C++ Source file). - Nombra ambos archivos de acuerdo con el nombre de la librería. Ejemplo: para una librería llamada
MiLibreria, usaMiLibreria.hyMiLibreria.cpp.
- Crea un archivo de encabezado
-
Escribir el código de la librería:
- Declara las funciones en el archivo de encabezado
.hy define las implementaciones en el archivo.cpp:
MiLibreria.h #ifndef MILIBRERIA_H //ifndef = if not defined...#define MILIBRERIA_H //define = define the following code with the name MILIBRERIA_Hint suma(int a, int b);#endif //end of the if statementMiLibreria.cpp #include "MiLibreria.h"int suma(int a, int b) {return a + b;} - Declara las funciones en el archivo de encabezado
-
Compilar la librería:
- Compila el proyecto para generar un archivo
.a(para librerías estáticas). Hay otro tipo de librerías (como las dinámicas) que usan el formato.dllpero no las hemos visto así que no rayarse.
- Compila el proyecto para generar un archivo
-
Agregar la librería a un proyecto:
- Abre la configuración del compilador (
Settings > Compiler...). - En
Linker settings, agrega la ruta del archivo.agenerado en la carpeta.../bin/Debugo.../bin/Release. - En
Compiler settings, selecciona la pestañaCompilery añade la ruta completa del archivo.hde la librería. - En
Linker, agrega nuevamente la ruta completa de la librería.a.
- Abre la configuración del compilador (
Con esta librería ahora puedes hacer uso de la función suma en otros proyectos simplemente incluyendo MiLibreria.h:
#include <iostream>#include "MiLibreria.h"
int main() { std::cout << "La suma de 5 y 10 es: " << suma(5, 10) << std::endl; return 0;}Ahora tienes una librería personalizada que puedes integrar y reutilizar en otros proyectos.