Las bibliotecas de C++ proporcionan funcionalidades preconstruidas que pueden incluirse en un programa. Algunas bibliotecas comunes son iostream para entrada/salida, string para manipular cadenas, y vector para contenedores. Las bibliotecas deben declararse al inicio del código usando #include.
Heinsohn Privacidad y Ciberseguridad para el sector educativo
LibC
1. Alumnos:
Andrea
Monserrat De
La Cruz
Ramos y
Xahiro Baruc
Vargas López.
Grado y
Grupo: 2°Dm
Especialidad:
Programación
Materia:
Desarrollo de
software
utilizando
programación
estructurada.
BIBLIOTECAS QUE EXISTEN
PARA C++
2. En C++, se conoce como librerías (o bibliotecas) a cierto tipo de archivos
que podemos importar o incluir en nuestro programa. Estos archivos
contienen las especificaciones de diferentes funcionalidades ya construidas
y utilizables que podremos agregar a nuestro programa, como por ejemplo
leer del teclado o mostrar algo por pantalla entre muchas otras más.
Al poder incluir estas librerías con definiciones de diferentes
funcionalidades podremos ahorrarnos gran cantidad de cosas, imaginemos
por ejemplo que cada vez que necesitemos leer por teclado, debamos
entonces crear una función que lo haga (algo realmente complejo), al poder
contar con las librerías en C++, podremos hacer uso de una gran variedad
de funciones que nos facilitaran la vida y aumentarán la modularidad de
nuestros códigos.
Las librerías no son únicamente archivos externos creados por otros,
también es posible crear nuestras propias librerías y utilizarlas en nuestros
programas. Las librerías pueden tener varias extensiones diferentes, las
más comunes son: .lib, .bpl, .a, .dll, .h y algunas más ya no tan comunes.
¿QUÉ SON EXACTAMENTE LAS
LIBRERÍAS?
3. La declaración de librerías, tanto en C como en C++, se debe
hacer al principio de todo nuestro código, antes de la
declaración de cualquier función o línea de código, debemos
indicarle al compilador que librerías usar, para el saber que
términos estarán correctos en la escritura de nuestro código y
cuáles no. La sintaxis es la siguiente: #include <nombre de la
librería> o alternativamente #include "nombre de la librería".
Cualquiera de las 2 formas es válida en C++ (no estoy seguro
si en C sea válido), ten en cuenta que siempre el nombre de la
librería debe ir entre " y " o entre < y >. En tu código puedes
declarar todas las librerías que quieras aunque en realidad no
tienen sentido declarar una librería que no vas a usar en tu
programa, sin embargo no existe límite para esto.
SINTAXIS PARA DECLARAR LIBRERÍAS EN
C++
4. A continuación pondré algunas de las librerías de uso más común de C++ y
que forman parte de las librerías estándar de este lenguaje.
fstream:
Flujos hacia/desde ficheros. Permite la manipulación de archivos desde el
programar, tanto leer como escribir en ellos.
iosfwd:
Contiene declaraciones adelantadas de todas las plantillas de flujos y sus
typedefs estándar. Por ejemplo ostream.
iostream:
Parte del a STL que contiene los algoritmos estándar, es quizá la más
usada e importante (aunque no indispensable).
La biblioteca list:
Parte de la STL relativa a contenedores tipo list; listas doblemente
enlazadas.
LIBRERÍAS ESTÁNDAR DE C++ (STANDAR
TEMPLATE LIBRARY O STL)
5. memory:
Utilidades relativas a la gestión de memoria, incluyendo asignado res y
punteros inteligentes (auto_ptr).
"auto_ptr" es una clase que conforma la librería memory y permite un fácil
manejo de punteros y su destrucción automáticamente.
Biblioteca new:
Manejo de memoria dinámica.
numeric:
Parte de la librería numérica de la STL relativa a operaciones numéricas.
ostream:
Algoritmos estándar para los flujos de salida.
queue:
Parte de la STL relativa a contenedores tipo queue (colas de objetos).
6. Librería stdio:
Contiene los prototipos de las funciones, macros, y tipos para manipular
datos de entrada y salida.
Librería stdlib:
Contiene los prototipos de las funciones, macros, y tipos para utilidades de
uso general.
string:
Parte de la STL relativa a contenedores tipo string; una generalización de
las cadenas alfanuméricas para albergar cadenas de objetos. Muy útil para el
fácil uso de las cadenas de caracteres, pues elimina muchas de las
dificultades que generan los char.
typeinfo:
Mecanismo de identificación de tipos en tiempo de ejecución.
math:
Contiene los prototipos de las funciones y otras definiciones para el uso y
manipulación de funciones matemáticas.
7. vector:
Parte de la STL relativa a los contenedores tipo vector; una generalización de las
matrices unidimensionales C/C++
forward_list
Esta librería es útil para implementar con gran facilidad listas enlazadas simples.
list
Permite implementar listas doblemente enlazadas (listas enlazadas dobles)
fácilmente.
Iterator
Proporciona un conjunto de clases para iterar elementos.
regex
Proporciona fácil acceso al uso de expresiones regulares para la comparación de
patrones.
thread
Útil para trabajar programación multihilos y crear múltiples hilos en nuestra
aplicación.
8. Veamos a continuación como se haría la declaración de unas
cuantas librerías conocidas, recuerda que ese pueden declarar
todas las librerías necesarias y siempre debe hacerse al comienzo
del código fuente.
Con esto debió quedar claro, como declarar librerías C++ al interior
de un código fuente. Lo único adicional, es la línea que dice using
namespace std; esta línea nos ayuda a declarar un espacio de
nombre que evita tener que usarlo cada que accedemos a alguna
función especifica de una librería. Teniendo este namespace
declarado podemos llamar por ejemplo el comando cout >>, que
pertenece a la librería iostream, sin embargo sin este namespace
sería std::cout >>.
¿CÓMO DECLARAR UNA LIBRERÍA EN
C++?
9. Todas las librerías estándar de C++ contienen una declaración del
espacio de nombre std, es decir que todas las librerías que hacen parte
del estándar de C++ colocan entidades dentro de este espacio de
nombre.
Por esta razón cuando declaramos el uso del espacio de nombre std
por medio de "using namespace std;", podemos evitar estar escribiendo
std::cout o std::cin, etc en nuestro código.
El espacio de nombre std como tal no es una librería sino simplemente
un namespace, por esta razón no reemplaza la declaración de las
librerías del código, simplemente facilita la escritura de éste al
momento de usar las entidades de las librerías estándar. Sin embargo
si vamos a hacer uso de una o varias librerías estándar de C++ es
recomendable que declaremos el namespace std, para no tener que
estar constantemente escribiendo cosas similares a las que puse hace
unas líneas como std::cin o similares, dado que únicamente se puede
acceder a la entidades de las librerías estándar por medio del espacio
nombre std.
ACERCA DEL NAMESPACE STD
10. En el siguiente ejemplo veremos el uso de la librería stdlib.h que
posee una gran variedad de funcionalidades, para este ejemplo
usaremos la función rand que nos permite generar un número
aleatorio.
En el anterior código hemos hecho uso de dos librerías: iostream y
stdlib. La librería o biblioteca iostream, nos permitirá hacer uso del
cin y el cout para obtener o imprimir valores por pantalla,
respectivamente mientras stdlib nos dará acceso a la función rand
que generará por nosotros un número cualquiera.
EJEMPLO 1 DE LIBRERÍAS EN C++
11. En el siguiente ejemplo veremos el uso de la librería string.h que
nos permite básicamente crear y manipular muy fácilmente cadenas
de caracteres.
Aquí hemos mostrado un mensaje solicitando el nombre al usuario y
luego usando string, hemos creado un saludo que incluya el nombre
del usuario. "Hola Juan".
EJEMPLO 2 DE LIBRERÍAS EN C++
12. EJEMPLO 3 PARA BIBLIOTECAS EN C++:EN
ESTE EJEMPLO USAREMOS LA BIBLIOTECA VECTOR, ITERATOR Y LIST, PAR A CREAR
UN LISTA DOBLEMENTE ENLAZADA , AGREG AR ALGUNOS ELEMENTOS EN ELLA
(INCLUIDO UN VECTOR) Y RECORRERLA .
13. Las librearías son archivos (no siempre externos) que nos
permiten llevar a cabo diferentes tareas sin necesidad de
preocuparnos por cómo se hacen sino simplemente entender
cómo usarlas. Las librearías en C++ permiten hacer nuestros
programas más modulares y reutilizables, facilitando además
crear programas con funcionalidades bastante complejas en
unas pocas líneas de código
CONCLUSIÓN