Академический Документы
Профессиональный Документы
Культура Документы
Cursos
C++
Bibliotecas O Librerias
Recomendado para ti
Aprende a programar aplicaciones Java, y aplicando la programación orientada a objetos con Java, como nunca te
enseñaron
video
Nota: Existe una discusión sobre el nombre de estos archivos. Muchos personas consideran que el nombre adecuado es
archivos de biblioteca, y estan en lo correcto. Sin embargo, la mayoría llamamos a estos archivos librerías, y también me
incluyo entre estos. El error proviene del nombre en inglés, que es library. Este término se traduce como biblioteca, y no
como librería. De este modo a lo largo de esta sección las llamaré de cualquiera de las dos formas, para estár mas claros.
Hay un conjunto de bibliotecas (o librerías) muy especiales, que se incluyen con todos los compiladores de C y de C++.
Son las librerías (o bibliotecas) ANSI o estándar. También hay librerías que no son parte del estándar pero en esta sección
sólo usaremos algunas bibliotecas (o librerías) ANSI.
Nota 2: Sé que esto pinta aburrido, pero es muy útil y realmente las libreróas nos facilitan enormemente el trabajo de
programar. Recuerda que antes de hablar librerías y demás es necesario dominar algunos conceptos de fundamentación en
general y otros temas importantes (ciclos, condicionales y demás) Ahora veamos algunas librerías y como es su sintaxis.
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.
En conclusión: 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.
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
math: Contiene los prototipos de las funciones y otras definiciones para el uso y manipulación de funciones
matemáticas.
memory: Utilidades relativas a la gestión de memoria, incluyendo asignadores 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
automaticamente.
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 d elas
dificultades que generan los char
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 enlzadas (listas enlazadas dobles) facilmente.
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.
Nota: Para más información sobre las librerías estandar de C++ y STL puedes ingresar aquí
#include "iostream" #include "string" #include <math.h> #include <conio.h> using namespace std;
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 >>, imagina
tener que hacer esto cada vez que uses algún comando o función de las librerías, sería bastante tedioso.
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.
Muy bien, ahora veamos algunos ejemplos simples del uso de librerías o bibliotecas en C++
#include <stdlib.h> #include <iostream> using namespace std; int main () { cout << ("Se va a generar un
numero aleatorio ....\n"); cout << ("El numero generado es : "); cout << rand(); //Se genera el número con
rand y se muestra en pantalla return 0; }
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.
#include <string.h> #include <iostream> using namespace std; int main () { cout << ("Hola! Por favor ingrese
su nombre ....\n"); string cadena = "Hola "; //Se le da un valor inicial al string string nombre; //Esta
cadena contendrá el nombre cin >> nombre; //Se lee el nombre cadena = cadena + nombre; //Se juntan el saludo
con el nombre usando "+" cout << (cadena); //Se muestra el resultado final. return 0; }
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".
#include <iostream> #include <list> #include <vector> using namespace std; int main () { list<int> miLista;
//Creamos list<int>::iterator it; for (int i=10; i<=50; i = i+10) { miLista.push_back(i); } //Se agrega un 10
20 30 40 50 a la lista it = miLista.begin(); //Se estabelce el iterador al comienzo de la lista it++;
//Movemos el iterador una posición (ahora estamos en 20) //Se inserta un 11 en la posición del 10 11 20 30 40
50 miLista.insert (it,11); miLista.insert (it,3,18); //En la actual posición del 20 insertamos un 18 tres
veces //10 11 18 18 18 20 30 40 50 //Creamos un vector que poseerá dos elementos con valor de 19 vector<int>
myvector (2,19); //Insertamos ese vector en la lista, enviando los iteradores del propio vector
miLista.insert (it,myvector.begin(),myvector.end()); //10 11 18 18 18 19 19 20 30 40 50 cout << "Mi lista
contiene lo siguiente:"; for (it=miLista.begin(); it!=miLista.end(); it++) { cout << ' ' << *it; //Se muestra
el valor al cual está aùntando el iterador } return 0; }
El resultado final de la ejecución de este código debería mostrar por pantalla "Mi lista contiene lo siguiente: 10 11 18 18
18 19 19 20 30 40 50" que es el resultado final de la inserción.
Muy bien. He añadido este par de ejemplo a petición de algunos visitantes del sitio y creo que sí eran muy necesarios,
espero que con esto hayas clarificado dudas y afianzado el concepto.
¡¡¡Bueno!!! Es todo lo que necesitas saber sobre librerías, al menos en la lista que te he puesto, están las que vamos a usar
para ejemplos y ejercicios y algunas otras de mas. Si deseas información sobre alguna otra o que amplíe la información
sobre alguna que ya esta aquí, házmelo saber por medio de la sección de comentarios
Ahora vamos a la siguiente sección y metamosle mano a algunos códigos y cómo es su estructura. Da clic en el siguiente
contenido llamado Funciones en C++.
JuanDMeGon
Anterior
Punteros
Siguiente
Funciones