
FUNCIONES DE PARÁMETROS
¿Qué son exactamente las librerías?
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.
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.
Sintaxis para declarar Librerías en C++
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 estaran 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.
Librerías Estandar de C++ (Standar Template Library o STL)
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 estandar 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
-
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.
-
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).
-
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
-
typeinfo: Mecanismo de identificación de tipos en tiempo de ejecución
-
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.
-
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.
IMPLEMENTACIÓN DE PROBLEMAS EN C++
#include <iostream>
#include <cmath>
#include <conio.h>
#include <csetjmp>
using namespace std;
void PITAGORAS();
int cat1,cat2;
double hipo,R,h,A;
void A_CILINDRO();
double PI=3.141592;
void A_ISOSCELES();
int lad1,lad2;
double AT;
int main()
{ textbackground(RED);
textcolor(YELLOW);
int OPCION;
cout<<"+++++++MENU++++++++++\n";
cout<<"(1)TEOREMA DE PITAGORAS\n";
cout<<"(2)AREA DE UN CILINDRO\n";
cout<<"(3) AREA DE UN TRIANGULO ISOSCELES\n";
cin>>OPCION;
switch(OPCION)
{
{ case 1:
{
PITAGORAS();
};break;
case 2:
{
A_CILINDRO();
};break;
case 3:
{
A_ISOSCELES();
};break;
}
}
// system ("pause");
return 0;
getch();
}
// ZONA DE FUNCIONES
void PITAGORAS()
{
cout<<"ingese el cateto adiacente :";
cin>>cat1;
cout<<"ingrese el cateto opuesto :";
cin>>cat2;
hipo= sqrt(pow(cat1,2)+pow(cat2,2));
cout<<"-------------------------------\n";
cout<<"la hipotenusa es :"<<hipo<< endl;
}
void A_CILINDRO()
{
cout<<"ingrese la altura del cilindro :";
cin>>h;
cout<<"ingres el radio del cilindro :";
cin>> R;
for(R=10; R<=20; R=R++)
{
A=2*PI*R*(R+h);
cout<<"---------------------------------------\n";
cout<<"el area del cilindro es :"<<A<<endl;
}
}
void A_ISOSCELES()
{
cout<<"ingrese el lado equilatero :";
cin>>lad1;
cout<<"ingrese el lado base :";
cin>>lad2;
AT=lad2*sqrt(pow(lad1,2)-(pow(lad2,2)/4))/2;
cout<<"---------------------------------------\n";
cout<<"area del triangulo isosceles es :"<<AT<<endl;
}
LINKS PARA MAS INFORMACIÓN: