SlideShare una empresa de Scribd logo
NOMBRE: FERNANDO
YAHIR CRUZ CASTILLO
ALVARADO MORIN CAROL
ALEXANDRA
MAESTRA: MARGARITA
ROMERO ALVARADO
SEMESTRE: 2°
GRUPO: DM (PG)
BIBLIOTECAS QUE EXISTENPARA C++
¿QUE ES UNA BIBLIOTECA EN C++?
Una biblioteca de C es una colección de rutinas
utilizadas en el lenguaje de programación C. Las
bibliotecas más comunes son la biblioteca estándar
de C y la ISO y estándar ANSI C provee las
especificaciones de los estándares, las cuales son
ampliamente compartidas entre bibliotecas.
BIBLIOTECAESTANDAR DE C++
En C++, la biblioteca estándar es una colección
de clases y funciones, escritas en el núcleo del lenguaje. La
biblioteca estándar proporciona varios contenedores genéricos,
funciones para utilizar y manipular esos contenedores, funciones
objeto, cadenas y flujos genéricos (incluyendo E/S interactiva y de
archivos) y soporte para la mayoría de las características del
lenguaje. La biblioteca estándar de C++ también incorpora
la biblioteca estándar de C. Las características de la biblioteca
estándar están declaradas en el espacio de nombres std.
Standard Template Library
Es un subconjunto de la biblioteca estándar de
C++ que contiene los contenedores, algoritmos,
iteradores, funciones objeto, etc.; aunque algunas
personas utilizan el término STL indistintamente
con la biblioteca estándar de C++.
Flujos hacia/desde ficheros. Permite la
manipulación de archivos desde el programar,
tanto leer como escribir en ellos.
FSTREAM
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 (ble)
aunque no indispensa
Contenedores de secuencias
Los contenedores de secuencias mantienen el orden de los elementos insertados que especifique.
Un contenedor de vector se comporta como una matriz, pero puede crecer automáticamente según sea
necesario. Su acceso es aleatorio y se almacena de forma contigua, y su longitud es muy flexible. Por estas
y otras razones, vector es el contenedor preferido de secuencias para la mayoría de las aplicaciones. Si no
sabe con seguridad qué tipo de contenedor de secuencias debe utilizar, empiece usando un vector. Para
más información, vea vector (Clase).
Un contenedor de array tiene algunas de las ventajas de vector, pero la longitud no es tan flexible. Para
más información, vea array (Clase).
Un contenedor de deque (cola de dos extremos) permite inserciones y eliminaciones rápidas al principio y
al final del contenedor. Comparte las ventajas de acceso aleatorio y longitud flexible de vector, pero no es
contiguo. Para más información, vea deque (Clase).
Un contenedor de list es una lista doblemente vinculada que permite el acceso bidireccional e inserciones y
eliminaciones rápidas en cualquier parte del contenedor, pero no permite tener acceso de forma aleatoria a
un elemento en el contenedor. Para más información, vea list (Clase).
Un contenedor de forward_list es una lista vinculada única (la versión de acceso de avance de list). Para
más información, vea forward_list (Clase).
Contenedores asociativos
En los contenedores asociativos, los elementos se insertan en un orden predefinido; por ejemplo, por orden ascendente. Los
contenedores asociativos sin ordenar también están disponibles. Los contenedores asociativos se pueden agrupar en dos
subconjuntos: asignaciones y conjuntos.
Una map, a la que a veces se hace referencia como un diccionario, consta de un par de clave/valor. La clave se utiliza para
ordenar la secuencia, y el valor está asociado a esa clave. Por ejemplo, una map podría contener claves que representan
cada palabra única en un texto y valores correspondientes que representan el número de veces que aparece cada palabra en
el texto. La versión no ordenada de map es unordered_map. Para más información, vea map (Clase) y unordered_map
(Clase).
Un set es simplemente es un contenedor ascendente de elementos únicos (el valor también es la clave). La versión no
ordenada de set es unordered_set. Para más información, vea set (Clase) y unordered_set (Clase).
Tanto map como set permiten solo una instancia de una clave o elemento en el contenedor. Si se requieren varias instancias
de elementos, utilice multimap o multiset. Las versiones no ordenadas son unordered_multimap y unordered_multiset.
Para más información, vea los temas multimap (Clase), unordered_multimap (Clase), multiset (Clase) y
unordered_multiset (Clase).
Las asignaciones y los conjuntos no ordenados admiten iteradores bidireccionales, y los homólogos no ordenados admiten
los iteradores hacia delante. Para más información, vea Iteradores.
Búsqueda heterogénea en contenedores asociativos (C++14)
Los contenedores asociativos ordenados (map, multimap, set y multiset) ahora admiten la búsqueda
heterogénea, lo que significa que ya no es necesario pasar exactamente el mismo tipo de objeto que la
clave o el elemento de las funciones miembro como find() y lower_bound(). En vez de eso, puede pasar
cualquier tipo para el que haya definida una sobrecarga operator< que permita la comparación con el tipo
de clave.
La búsqueda heterogénea se debe habilitar expresamente al especificar el comparador "functor rombo"
std::less<> o std::greater<> cuando se declara la variable de contenedor, como se muestra aquí:
Clase
En informática, una clase es una plantilla para la creación de objetos de datos según un modelo
predefinido. Las clases se utilizan para representar entidades o conceptos, como los sustantivos en el
lenguaje. Cada clase es un modelo que define un conjunto de variables -el estado, y métodos apropiados
para operar con dichos datos -el comportamiento. Cada objeto creado a partir de la clase se denomina
instancia de la clase.
Las clases son un pilar fundamental de la programación orientada a objetos. Permiten abstraer los
datos y sus operaciones asociadas al modo de una caja negra. Los lenguajes de programación que
soportan clases difieren sutilmente en su soporte para diversas características relacionadas con clases.
La mayoría soportan diversas formas de herencia. Muchos lenguajes también soportan características
para proporcionar encapsulación, como especificadores de acceso.
Una clase también puede tener una representación (metaobjeto) en tiempo de ejecución, que
proporciona apoyo en tiempo de ejecución para la manipulación de los metadatos relacionados con la
clase.
Funciones (Subrutina)
En informática, una subrutina o subprograma (también llamada procedimiento, función , rutina o
método), como idea general, se presenta como un subalgoritmo que forma parte del algoritmo
principal, el cual permite resolver una tarea específica. Algunos lenguajes de programación, como
Visual Basic .NET o Fortran, utilizan el nombre función para referirse a subrutinas que devuelven
un valor.
Si usa el comparador predeterminado, el contenedor se comporta exactamente igual que en C++11 y
versiones anteriores.
En el ejemplo siguiente se muestra cómo sobrecargar operator< para permitir a los usuarios de un
std::set realizar búsquedas pasando simplemente una cadena pequeña que se puede comparar con el
miembro BigObject::id de cada objeto.
Las siguientes funciones miembro de map,
multimap, set y multiset se han sobrecargado
para admitir búsquedas heterogéneas:
find
count
lower_bound
upper_bound
equal_range
Adaptadores de contenedor
Un adaptador de contenedor es una variación de un contenedor de secuencia o asociativo que restringe la
interfaz para una mayor simplicidad y claridad. Los adaptadores de contenedor no admiten iteradores.
Un contenedor de queue sigue la semántica de FIFO (primero en entrar, primero en salir). El primer
elemento insertado (es decir, insertado en la cola) es el primero en sacarse (es decir, en eliminarse de la
cola). Para más información, vea queue (Clase).
Un contenedor de priority_queue se organiza de forma que el elemento que tiene el valor más alto siempre
es el primero de la cola. Para más información, vea priority_queue (Clase).
Un contenedor de stack sigue la semántica de LIFO (último en entrar, primero en salir). El último
elemento incrustado en la pila es el primer elemento sacado. Para más información, vea stack (Clase).
Dado que los adaptadores de contenedor no admiten iteradores, no se pueden usar con los algoritmos de la
biblioteca estándar de C++. Para más información, vea Algoritmos.
Requisitos para los elementos de contenedor
Normalmente los elementos insertados en un contenedor de la biblioteca estándar de C++ pueden ser
simplemente de cualquier tipo de objeto si se pueden copiar. Móvil (solo elementos): por ejemplo, los
vector<unique_ptr<T>> creados mediante unique_ptr<> funcionarán siempre que no llame a funciones de
miembro que intenten copiarlos.
Los destructores no pueden producir excepciones.
Los contenedores asociativos ordenados (descritos anteriormente en este artículo) deben tener un operador
de comparación público definido. (De forma predeterminada, el operador es operator<, pero se admiten
incluso los que no funcionan con operator<).
Algunas operaciones en los contenedores también podrían requerir un constructor público predeterminado y
un operador de equivalencia público. Por ejemplo, los contenedores asociativos sin ordenar requieren la
compatibilidad de algoritmos hash y de igualdad.
Elementos contenedores de acceso
El acceso a los elementos de contenedores se realiza mediante iteradores.
Iteradores: Un iterador es un objeto que puede iterar sobre los elementos de un contenedor de la
biblioteca estándar de C++ y proporcionar acceso a los elementos individuales. Todos los contenedores de
la biblioteca estándar de C++ proporcionan los iteradores para que los algoritmos puedan tener acceso a
sus elementos de manera estándar sin tener que preocuparse por el tipo de contenedor en el que están
almacenados los elementos.
Comparar contenedores
Todos los contenedores sobrecargan el operador == para comparar dos contenedores del mismo tipo que tienen el mismo
tipo de elemento. Se puede usar == para comparar un vector<string> con otro vector<string>, pero no se puede usar para
comparar un vector<string> con una list<string> o un vector<string> con un vector<char*>. En C++98/03 se puede usar
std::equal o std::mismatch para comparar tipos de contenedores o elementos diferentes. En C++11 también se puede usar
std::is_permutation. Pero en todos estos casos, las funciones asumen que los contenedores tienen la misma longitud. Si el
segundo intervalo es menor que el primero, se producirá un comportamiento indefinido. Si el segundo intervalo es más
largo, los resultados pueden ser incorrectos porque la comparación no continúa más allá del final del primer intervalo.
Comparar contenedores diferentes (C++14)
En C++14 y versiones posteriores, se pueden comparar contenedores y tipos de elementos diferentes mediante una de las
sobrecargas de funciones de std::equal, std::mismatch o std::is_permutation que toman dos intervalos completos. Estas
sobrecargas le permiten comparar contenedores de distintas longitudes. Estas sobrecargas son mucho menos susceptibles
a errores del usuario y están optimizadas para devolver false en tiempo constante cuando se comparan contenedores de
longitudes diferentes. Por tanto, se recomienda usar estas sobrecargas a menos que (1) tenga un motivo muy claro para no
hacerlo o (2) use un contenedor std::list, que no se beneficia de las optimizaciones de doble intervalo.
Cabeceras estándar
Contenedores
<bitset>
provee la clase contenedora especializada std::bitset, un arreglo de bits.
<deque>
provee la plantilla clase contenedora std::deque, una cola doblemente enlazada.
<list>
provee la plantilla clase contenedora std::list, una lista doblemente enlazada.
<map>
provee las plantillas clases contenedoras std::map y std::multimap, un arreglo asociativo y un arreglo asociativo múltiple
respectivamente.
<queue>
provee la clase adaptadora contenedora std::queue, una cola de datos.
<set>
provee las plantillas clases contenedoras std::set y std::multiset, contenedores asociativos ordenados.
<stack>
provee la clase adaptadora contenedora std::stack, una pila de datos.
<vector>
provee la plantilla clase contenedora std::vector, un arreglo dinámico.

Más contenido relacionado

La actualidad más candente

Manual de-referencia-de-lua-5-1 new
Manual de-referencia-de-lua-5-1  newManual de-referencia-de-lua-5-1  new
Manual de-referencia-de-lua-5-1 new
Hector Ramon Flores Bernal
 
Glosario de términos
Glosario de términosGlosario de términos
Glosario de términos
Misheell Meseguer
 
Tipos de variables que Java maneja
Tipos de variables que Java manejaTipos de variables que Java maneja
Tipos de variables que Java maneja
Laura Robles
 
Unidad i poo
Unidad i pooUnidad i poo
Unidad 2 Sintaxis en java
Unidad 2 Sintaxis en javaUnidad 2 Sintaxis en java
Unidad 2 Sintaxis en java
Cindy Adriana Bohórquez Santana
 
Programación 3: clases derivadas y polimorfismo
Programación 3: clases derivadas y polimorfismoProgramación 3: clases derivadas y polimorfismo
Programación 3: clases derivadas y polimorfismo
Angel Vázquez Patiño
 
Variables en java
Variables en javaVariables en java
Variables en java
lizandromezaudgvirtual
 
Grupo1
Grupo1Grupo1
Grupo1
Jose Lara
 
Tipos de Variables en Java
Tipos de Variables en JavaTipos de Variables en Java
Tipos de Variables en Java
Aldemar Rosas
 
Entrada y salida de datos en java
Entrada y salida de datos en javaEntrada y salida de datos en java
Entrada y salida de datos en java
tensanti
 
Apoo v
Apoo vApoo v
Programación 3: Vector, stack, enumearator, iterator, listiterator en Java
Programación 3: Vector, stack, enumearator, iterator, listiterator en JavaProgramación 3: Vector, stack, enumearator, iterator, listiterator en Java
Programación 3: Vector, stack, enumearator, iterator, listiterator en Java
Angel Vázquez Patiño
 
Flujo datos
Flujo datosFlujo datos
Flujo datos
innovalabcun
 
Lab archivos
Lab archivosLab archivos
Tipo de datos JAVA
Tipo de datos JAVATipo de datos JAVA
Tipo de datos JAVA
jorge_soriano
 
Java 5 se (presentación3)
Java 5 se (presentación3)Java 5 se (presentación3)
Java 5 se (presentación3)
programadorjavablog
 
Unidad 3 CLASES, OBJETOS E INTSANCIAS
Unidad 3 CLASES, OBJETOS E INTSANCIASUnidad 3 CLASES, OBJETOS E INTSANCIAS
Unidad 3 CLASES, OBJETOS E INTSANCIAS
Cindy Adriana Bohórquez Santana
 
Tipos de datos Java
Tipos de datos JavaTipos de datos Java
Tipos de datos Java
Ricardo Daniel
 
Presentacion6
Presentacion6Presentacion6
Tipos de datos.java
Tipos de datos.javaTipos de datos.java
Tipos de datos.java
Gustavo Castillo
 

La actualidad más candente (20)

Manual de-referencia-de-lua-5-1 new
Manual de-referencia-de-lua-5-1  newManual de-referencia-de-lua-5-1  new
Manual de-referencia-de-lua-5-1 new
 
Glosario de términos
Glosario de términosGlosario de términos
Glosario de términos
 
Tipos de variables que Java maneja
Tipos de variables que Java manejaTipos de variables que Java maneja
Tipos de variables que Java maneja
 
Unidad i poo
Unidad i pooUnidad i poo
Unidad i poo
 
Unidad 2 Sintaxis en java
Unidad 2 Sintaxis en javaUnidad 2 Sintaxis en java
Unidad 2 Sintaxis en java
 
Programación 3: clases derivadas y polimorfismo
Programación 3: clases derivadas y polimorfismoProgramación 3: clases derivadas y polimorfismo
Programación 3: clases derivadas y polimorfismo
 
Variables en java
Variables en javaVariables en java
Variables en java
 
Grupo1
Grupo1Grupo1
Grupo1
 
Tipos de Variables en Java
Tipos de Variables en JavaTipos de Variables en Java
Tipos de Variables en Java
 
Entrada y salida de datos en java
Entrada y salida de datos en javaEntrada y salida de datos en java
Entrada y salida de datos en java
 
Apoo v
Apoo vApoo v
Apoo v
 
Programación 3: Vector, stack, enumearator, iterator, listiterator en Java
Programación 3: Vector, stack, enumearator, iterator, listiterator en JavaProgramación 3: Vector, stack, enumearator, iterator, listiterator en Java
Programación 3: Vector, stack, enumearator, iterator, listiterator en Java
 
Flujo datos
Flujo datosFlujo datos
Flujo datos
 
Lab archivos
Lab archivosLab archivos
Lab archivos
 
Tipo de datos JAVA
Tipo de datos JAVATipo de datos JAVA
Tipo de datos JAVA
 
Java 5 se (presentación3)
Java 5 se (presentación3)Java 5 se (presentación3)
Java 5 se (presentación3)
 
Unidad 3 CLASES, OBJETOS E INTSANCIAS
Unidad 3 CLASES, OBJETOS E INTSANCIASUnidad 3 CLASES, OBJETOS E INTSANCIAS
Unidad 3 CLASES, OBJETOS E INTSANCIAS
 
Tipos de datos Java
Tipos de datos JavaTipos de datos Java
Tipos de datos Java
 
Presentacion6
Presentacion6Presentacion6
Presentacion6
 
Tipos de datos.java
Tipos de datos.javaTipos de datos.java
Tipos de datos.java
 

Similar a Biblioteca

Tabla de símbolos
Tabla de símbolosTabla de símbolos
2) introduccion al lenguaje java
2) introduccion al lenguaje java2) introduccion al lenguaje java
2) introduccion al lenguaje java
Margarita Romero
 
2introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate022introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate02
Krizztiina Pacheko
 
INTRODUCCION LENGUAJE JAVA
INTRODUCCION LENGUAJE JAVAINTRODUCCION LENGUAJE JAVA
INTRODUCCION LENGUAJE JAVA
Karla Estefania Villanueva Epigmenio
 
Arquitectura N-Capas y ADo.NET
Arquitectura N-Capas y ADo.NETArquitectura N-Capas y ADo.NET
Arquitectura N-Capas y ADo.NET
Roberto Taborda
 
Tabladesmbolos 101103230525-phpapp02
Tabladesmbolos 101103230525-phpapp02Tabladesmbolos 101103230525-phpapp02
Tabladesmbolos 101103230525-phpapp02
Javier Alva
 
Tipo c++
Tipo c++Tipo c++
Tipo c++
harryojeda
 
Tipo c++
Tipo c++Tipo c++
Tipo c++
harryojeda
 
Benita ppp unidad 1
Benita ppp unidad 1Benita ppp unidad 1
Benita ppp unidad 1
TAtiizz Villalobos
 
Clase15
Clase15Clase15
Clase15
Areli Gómez
 
Bibliotecas de-c
Bibliotecas de-cBibliotecas de-c
Bibliotecas de-c
Maztherprozh
 
Bibliotecas existentes para_c_
Bibliotecas existentes para_c_Bibliotecas existentes para_c_
Bibliotecas existentes para_c_
erickaagarciarosales
 
Bibliotecas de c++
Bibliotecas de c++Bibliotecas de c++
Bibliotecas de c++
Maztherprozh
 
Bibliotecas mas importantes en c++
Bibliotecas mas importantes en c++Bibliotecas mas importantes en c++
Bibliotecas mas importantes en c++
carmenmc2017
 
Bibliotecas mas importantes en c++
Bibliotecas mas importantes en c++Bibliotecas mas importantes en c++
Bibliotecas mas importantes en c++
carmenmc2017
 
OLE BD
OLE BDOLE BD
OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)
OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)
OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)
Oscar V
 
Tutorial C++
Tutorial C++Tutorial C++
Tutorial C++
ArmandoC42
 
Tutorial C++
Tutorial C++Tutorial C++
Tutorial C++
ArmandoC42
 
Tutorial c (3)
Tutorial c (3)Tutorial c (3)
Tutorial c (3)
ArmandoC42
 

Similar a Biblioteca (20)

Tabla de símbolos
Tabla de símbolosTabla de símbolos
Tabla de símbolos
 
2) introduccion al lenguaje java
2) introduccion al lenguaje java2) introduccion al lenguaje java
2) introduccion al lenguaje java
 
2introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate022introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate02
 
INTRODUCCION LENGUAJE JAVA
INTRODUCCION LENGUAJE JAVAINTRODUCCION LENGUAJE JAVA
INTRODUCCION LENGUAJE JAVA
 
Arquitectura N-Capas y ADo.NET
Arquitectura N-Capas y ADo.NETArquitectura N-Capas y ADo.NET
Arquitectura N-Capas y ADo.NET
 
Tabladesmbolos 101103230525-phpapp02
Tabladesmbolos 101103230525-phpapp02Tabladesmbolos 101103230525-phpapp02
Tabladesmbolos 101103230525-phpapp02
 
Tipo c++
Tipo c++Tipo c++
Tipo c++
 
Tipo c++
Tipo c++Tipo c++
Tipo c++
 
Benita ppp unidad 1
Benita ppp unidad 1Benita ppp unidad 1
Benita ppp unidad 1
 
Clase15
Clase15Clase15
Clase15
 
Bibliotecas de-c
Bibliotecas de-cBibliotecas de-c
Bibliotecas de-c
 
Bibliotecas existentes para_c_
Bibliotecas existentes para_c_Bibliotecas existentes para_c_
Bibliotecas existentes para_c_
 
Bibliotecas de c++
Bibliotecas de c++Bibliotecas de c++
Bibliotecas de c++
 
Bibliotecas mas importantes en c++
Bibliotecas mas importantes en c++Bibliotecas mas importantes en c++
Bibliotecas mas importantes en c++
 
Bibliotecas mas importantes en c++
Bibliotecas mas importantes en c++Bibliotecas mas importantes en c++
Bibliotecas mas importantes en c++
 
OLE BD
OLE BDOLE BD
OLE BD
 
OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)
OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)
OCP, JSE 6 Programmer (1z0-851) - Guia practica 3 de 7(ap-is)
 
Tutorial C++
Tutorial C++Tutorial C++
Tutorial C++
 
Tutorial C++
Tutorial C++Tutorial C++
Tutorial C++
 
Tutorial c (3)
Tutorial c (3)Tutorial c (3)
Tutorial c (3)
 

Más de Maztherprozh

Estructura basica para_c_(2)
Estructura basica para_c_(2)Estructura basica para_c_(2)
Estructura basica para_c_(2)
Maztherprozh
 
Tablas de verdad_para_c_
Tablas de verdad_para_c_Tablas de verdad_para_c_
Tablas de verdad_para_c_
Maztherprozh
 
Operadores yahir
Operadores yahirOperadores yahir
Operadores yahir
Maztherprozh
 
Jerarquia fandc
Jerarquia fandcJerarquia fandc
Jerarquia fandc
Maztherprozh
 
Jerarquia fandc
Jerarquia fandcJerarquia fandc
Jerarquia fandc
Maztherprozh
 
Instrucciones basicas para_c_2 - copia
Instrucciones basicas para_c_2 - copiaInstrucciones basicas para_c_2 - copia
Instrucciones basicas para_c_2 - copia
Maztherprozh
 
Cuestionario 1
Cuestionario 1Cuestionario 1
Cuestionario 1
Maztherprozh
 
Tipos de operadores_para_c_(2)
Tipos de operadores_para_c_(2)Tipos de operadores_para_c_(2)
Tipos de operadores_para_c_(2)
Maztherprozh
 
Tabla de--verdad
Tabla  de--verdadTabla  de--verdad
Tabla de--verdad
Maztherprozh
 
Instruccionesbqsioziel51 170328024111 (1) (1)
Instruccionesbqsioziel51 170328024111 (1) (1)Instruccionesbqsioziel51 170328024111 (1) (1)
Instruccionesbqsioziel51 170328024111 (1) (1)
Maztherprozh
 
Estructurabsicadeunprogramaendevc 140605195118-phpapp02(2)
Estructurabsicadeunprogramaendevc 140605195118-phpapp02(2)Estructurabsicadeunprogramaendevc 140605195118-phpapp02(2)
Estructurabsicadeunprogramaendevc 140605195118-phpapp02(2)
Maztherprozh
 
Ley de-jerarquia-de-operaciones
Ley de-jerarquia-de-operacionesLey de-jerarquia-de-operaciones
Ley de-jerarquia-de-operaciones
Maztherprozh
 
Instrucciones en c´´
Instrucciones en c´´Instrucciones en c´´
Instrucciones en c´´
Maztherprozh
 
Cuestionario (2)
Cuestionario (2)Cuestionario (2)
Cuestionario (2)
Maztherprozh
 
Instrucciones c
Instrucciones c Instrucciones c
Instrucciones c
Maztherprozh
 
Estructura basica de_un_programa_c_ (1)
Estructura basica de_un_programa_c_ (1)Estructura basica de_un_programa_c_ (1)
Estructura basica de_un_programa_c_ (1)
Maztherprozh
 
Librerias dee c_ (1)
Librerias dee c_ (1)Librerias dee c_ (1)
Librerias dee c_ (1)
Maztherprozh
 
Tabla de verdad(2)
Tabla de verdad(2)Tabla de verdad(2)
Tabla de verdad(2)
Maztherprozh
 
Tipos de operadores_para_c_
Tipos de operadores_para_c_Tipos de operadores_para_c_
Tipos de operadores_para_c_
Maztherprozh
 
Cuestionario (1)
Cuestionario (1)Cuestionario (1)
Cuestionario (1)
Maztherprozh
 

Más de Maztherprozh (20)

Estructura basica para_c_(2)
Estructura basica para_c_(2)Estructura basica para_c_(2)
Estructura basica para_c_(2)
 
Tablas de verdad_para_c_
Tablas de verdad_para_c_Tablas de verdad_para_c_
Tablas de verdad_para_c_
 
Operadores yahir
Operadores yahirOperadores yahir
Operadores yahir
 
Jerarquia fandc
Jerarquia fandcJerarquia fandc
Jerarquia fandc
 
Jerarquia fandc
Jerarquia fandcJerarquia fandc
Jerarquia fandc
 
Instrucciones basicas para_c_2 - copia
Instrucciones basicas para_c_2 - copiaInstrucciones basicas para_c_2 - copia
Instrucciones basicas para_c_2 - copia
 
Cuestionario 1
Cuestionario 1Cuestionario 1
Cuestionario 1
 
Tipos de operadores_para_c_(2)
Tipos de operadores_para_c_(2)Tipos de operadores_para_c_(2)
Tipos de operadores_para_c_(2)
 
Tabla de--verdad
Tabla  de--verdadTabla  de--verdad
Tabla de--verdad
 
Instruccionesbqsioziel51 170328024111 (1) (1)
Instruccionesbqsioziel51 170328024111 (1) (1)Instruccionesbqsioziel51 170328024111 (1) (1)
Instruccionesbqsioziel51 170328024111 (1) (1)
 
Estructurabsicadeunprogramaendevc 140605195118-phpapp02(2)
Estructurabsicadeunprogramaendevc 140605195118-phpapp02(2)Estructurabsicadeunprogramaendevc 140605195118-phpapp02(2)
Estructurabsicadeunprogramaendevc 140605195118-phpapp02(2)
 
Ley de-jerarquia-de-operaciones
Ley de-jerarquia-de-operacionesLey de-jerarquia-de-operaciones
Ley de-jerarquia-de-operaciones
 
Instrucciones en c´´
Instrucciones en c´´Instrucciones en c´´
Instrucciones en c´´
 
Cuestionario (2)
Cuestionario (2)Cuestionario (2)
Cuestionario (2)
 
Instrucciones c
Instrucciones c Instrucciones c
Instrucciones c
 
Estructura basica de_un_programa_c_ (1)
Estructura basica de_un_programa_c_ (1)Estructura basica de_un_programa_c_ (1)
Estructura basica de_un_programa_c_ (1)
 
Librerias dee c_ (1)
Librerias dee c_ (1)Librerias dee c_ (1)
Librerias dee c_ (1)
 
Tabla de verdad(2)
Tabla de verdad(2)Tabla de verdad(2)
Tabla de verdad(2)
 
Tipos de operadores_para_c_
Tipos de operadores_para_c_Tipos de operadores_para_c_
Tipos de operadores_para_c_
 
Cuestionario (1)
Cuestionario (1)Cuestionario (1)
Cuestionario (1)
 

Último

Presentación de proyecto en acuarela moderna verde.pdf
Presentación de proyecto en acuarela moderna verde.pdfPresentación de proyecto en acuarela moderna verde.pdf
Presentación de proyecto en acuarela moderna verde.pdf
LuanaJaime1
 
2° año LA VESTIMENTA-ciencias sociales 2 grado
2° año LA VESTIMENTA-ciencias sociales 2 grado2° año LA VESTIMENTA-ciencias sociales 2 grado
2° año LA VESTIMENTA-ciencias sociales 2 grado
GiselaBerrios3
 
Hablemos de ESI para estudiantes Cuadernillo
Hablemos de ESI para estudiantes CuadernilloHablemos de ESI para estudiantes Cuadernillo
Hablemos de ESI para estudiantes Cuadernillo
Mónica Sánchez
 
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdfCompartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
JimmyDeveloperWebAnd
 
CONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptx
CONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptxCONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptx
CONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptx
CARMENSnchez854591
 
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptxSEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
Osiris Urbano
 
CORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZA
CORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZACORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZA
CORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZA
Sandra Mariela Ballón Aguedo
 
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdfBlogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
lautyzaracho4
 
Camus, Albert - El Extranjero.pdf
Camus, Albert -        El Extranjero.pdfCamus, Albert -        El Extranjero.pdf
Camus, Albert - El Extranjero.pdf
AlexDeLonghi
 
1° T3 Examen Mtro JP 23-24.pdf completos
1° T3 Examen Mtro JP 23-24.pdf completos1° T3 Examen Mtro JP 23-24.pdf completos
1° T3 Examen Mtro JP 23-24.pdf completos
ROCIORUIZQUEZADA
 
UrkuninaLab.pdfsadsadasddassadsadsadasdsad
UrkuninaLab.pdfsadsadasddassadsadsadasdsadUrkuninaLab.pdfsadsadasddassadsadsadasdsad
UrkuninaLab.pdfsadsadasddassadsadsadasdsad
JorgeVillota6
 
efemérides del mes de junio 2024 (1).pptx
efemérides del mes de junio 2024 (1).pptxefemérides del mes de junio 2024 (1).pptx
efemérides del mes de junio 2024 (1).pptx
acgtz913
 
Este documento contiene, el programa completo de un acto para realizar la pro...
Este documento contiene, el programa completo de un acto para realizar la pro...Este documento contiene, el programa completo de un acto para realizar la pro...
Este documento contiene, el programa completo de un acto para realizar la pro...
romina395894
 
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJAPANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
estroba5
 
Liturgia día del Padre del siguiente domingo.pptx
Liturgia día del Padre del siguiente domingo.pptxLiturgia día del Padre del siguiente domingo.pptx
Liturgia día del Padre del siguiente domingo.pptx
YeniferGarcia36
 
Carnavision: anticipa y aprovecha - hackathon Pasto2024 .pdf
Carnavision: anticipa y aprovecha - hackathon Pasto2024 .pdfCarnavision: anticipa y aprovecha - hackathon Pasto2024 .pdf
Carnavision: anticipa y aprovecha - hackathon Pasto2024 .pdf
EleNoguera
 
CUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdf
CUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdfCUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdf
CUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdf
Inslvarez5
 
Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024
israelsouza67
 
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
JAVIER SOLIS NOYOLA
 
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLMExamen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Juan Martín Martín
 

Último (20)

Presentación de proyecto en acuarela moderna verde.pdf
Presentación de proyecto en acuarela moderna verde.pdfPresentación de proyecto en acuarela moderna verde.pdf
Presentación de proyecto en acuarela moderna verde.pdf
 
2° año LA VESTIMENTA-ciencias sociales 2 grado
2° año LA VESTIMENTA-ciencias sociales 2 grado2° año LA VESTIMENTA-ciencias sociales 2 grado
2° año LA VESTIMENTA-ciencias sociales 2 grado
 
Hablemos de ESI para estudiantes Cuadernillo
Hablemos de ESI para estudiantes CuadernilloHablemos de ESI para estudiantes Cuadernillo
Hablemos de ESI para estudiantes Cuadernillo
 
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdfCompartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
 
CONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptx
CONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptxCONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptx
CONCURSOS EDUCATIVOS 2024-PRESENTACIÓN ORIENTACIONES ETAPA IE (1).pptx
 
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptxSEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
 
CORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZA
CORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZACORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZA
CORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZA
 
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdfBlogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
 
Camus, Albert - El Extranjero.pdf
Camus, Albert -        El Extranjero.pdfCamus, Albert -        El Extranjero.pdf
Camus, Albert - El Extranjero.pdf
 
1° T3 Examen Mtro JP 23-24.pdf completos
1° T3 Examen Mtro JP 23-24.pdf completos1° T3 Examen Mtro JP 23-24.pdf completos
1° T3 Examen Mtro JP 23-24.pdf completos
 
UrkuninaLab.pdfsadsadasddassadsadsadasdsad
UrkuninaLab.pdfsadsadasddassadsadsadasdsadUrkuninaLab.pdfsadsadasddassadsadsadasdsad
UrkuninaLab.pdfsadsadasddassadsadsadasdsad
 
efemérides del mes de junio 2024 (1).pptx
efemérides del mes de junio 2024 (1).pptxefemérides del mes de junio 2024 (1).pptx
efemérides del mes de junio 2024 (1).pptx
 
Este documento contiene, el programa completo de un acto para realizar la pro...
Este documento contiene, el programa completo de un acto para realizar la pro...Este documento contiene, el programa completo de un acto para realizar la pro...
Este documento contiene, el programa completo de un acto para realizar la pro...
 
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJAPANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
 
Liturgia día del Padre del siguiente domingo.pptx
Liturgia día del Padre del siguiente domingo.pptxLiturgia día del Padre del siguiente domingo.pptx
Liturgia día del Padre del siguiente domingo.pptx
 
Carnavision: anticipa y aprovecha - hackathon Pasto2024 .pdf
Carnavision: anticipa y aprovecha - hackathon Pasto2024 .pdfCarnavision: anticipa y aprovecha - hackathon Pasto2024 .pdf
Carnavision: anticipa y aprovecha - hackathon Pasto2024 .pdf
 
CUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdf
CUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdfCUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdf
CUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdf
 
Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024
 
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
 
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLMExamen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
 

Biblioteca

  • 1. NOMBRE: FERNANDO YAHIR CRUZ CASTILLO ALVARADO MORIN CAROL ALEXANDRA MAESTRA: MARGARITA ROMERO ALVARADO SEMESTRE: 2° GRUPO: DM (PG) BIBLIOTECAS QUE EXISTENPARA C++
  • 2. ¿QUE ES UNA BIBLIOTECA EN C++? Una biblioteca de C es una colección de rutinas utilizadas en el lenguaje de programación C. Las bibliotecas más comunes son la biblioteca estándar de C y la ISO y estándar ANSI C provee las especificaciones de los estándares, las cuales son ampliamente compartidas entre bibliotecas.
  • 3. BIBLIOTECAESTANDAR DE C++ En C++, la biblioteca estándar es una colección de clases y funciones, escritas en el núcleo del lenguaje. La biblioteca estándar proporciona varios contenedores genéricos, funciones para utilizar y manipular esos contenedores, funciones objeto, cadenas y flujos genéricos (incluyendo E/S interactiva y de archivos) y soporte para la mayoría de las características del lenguaje. La biblioteca estándar de C++ también incorpora la biblioteca estándar de C. Las características de la biblioteca estándar están declaradas en el espacio de nombres std.
  • 4. Standard Template Library Es un subconjunto de la biblioteca estándar de C++ que contiene los contenedores, algoritmos, iteradores, funciones objeto, etc.; aunque algunas personas utilizan el término STL indistintamente con la biblioteca estándar de C++.
  • 5. Flujos hacia/desde ficheros. Permite la manipulación de archivos desde el programar, tanto leer como escribir en ellos. FSTREAM 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 (ble) aunque no indispensa
  • 6. Contenedores de secuencias Los contenedores de secuencias mantienen el orden de los elementos insertados que especifique. Un contenedor de vector se comporta como una matriz, pero puede crecer automáticamente según sea necesario. Su acceso es aleatorio y se almacena de forma contigua, y su longitud es muy flexible. Por estas y otras razones, vector es el contenedor preferido de secuencias para la mayoría de las aplicaciones. Si no sabe con seguridad qué tipo de contenedor de secuencias debe utilizar, empiece usando un vector. Para más información, vea vector (Clase). Un contenedor de array tiene algunas de las ventajas de vector, pero la longitud no es tan flexible. Para más información, vea array (Clase). Un contenedor de deque (cola de dos extremos) permite inserciones y eliminaciones rápidas al principio y al final del contenedor. Comparte las ventajas de acceso aleatorio y longitud flexible de vector, pero no es contiguo. Para más información, vea deque (Clase). Un contenedor de list es una lista doblemente vinculada que permite el acceso bidireccional e inserciones y eliminaciones rápidas en cualquier parte del contenedor, pero no permite tener acceso de forma aleatoria a un elemento en el contenedor. Para más información, vea list (Clase). Un contenedor de forward_list es una lista vinculada única (la versión de acceso de avance de list). Para más información, vea forward_list (Clase).
  • 7. Contenedores asociativos En los contenedores asociativos, los elementos se insertan en un orden predefinido; por ejemplo, por orden ascendente. Los contenedores asociativos sin ordenar también están disponibles. Los contenedores asociativos se pueden agrupar en dos subconjuntos: asignaciones y conjuntos. Una map, a la que a veces se hace referencia como un diccionario, consta de un par de clave/valor. La clave se utiliza para ordenar la secuencia, y el valor está asociado a esa clave. Por ejemplo, una map podría contener claves que representan cada palabra única en un texto y valores correspondientes que representan el número de veces que aparece cada palabra en el texto. La versión no ordenada de map es unordered_map. Para más información, vea map (Clase) y unordered_map (Clase). Un set es simplemente es un contenedor ascendente de elementos únicos (el valor también es la clave). La versión no ordenada de set es unordered_set. Para más información, vea set (Clase) y unordered_set (Clase). Tanto map como set permiten solo una instancia de una clave o elemento en el contenedor. Si se requieren varias instancias de elementos, utilice multimap o multiset. Las versiones no ordenadas son unordered_multimap y unordered_multiset. Para más información, vea los temas multimap (Clase), unordered_multimap (Clase), multiset (Clase) y unordered_multiset (Clase). Las asignaciones y los conjuntos no ordenados admiten iteradores bidireccionales, y los homólogos no ordenados admiten los iteradores hacia delante. Para más información, vea Iteradores.
  • 8. Búsqueda heterogénea en contenedores asociativos (C++14) Los contenedores asociativos ordenados (map, multimap, set y multiset) ahora admiten la búsqueda heterogénea, lo que significa que ya no es necesario pasar exactamente el mismo tipo de objeto que la clave o el elemento de las funciones miembro como find() y lower_bound(). En vez de eso, puede pasar cualquier tipo para el que haya definida una sobrecarga operator< que permita la comparación con el tipo de clave. La búsqueda heterogénea se debe habilitar expresamente al especificar el comparador "functor rombo" std::less<> o std::greater<> cuando se declara la variable de contenedor, como se muestra aquí:
  • 9. Clase En informática, una clase es una plantilla para la creación de objetos de datos según un modelo predefinido. Las clases se utilizan para representar entidades o conceptos, como los sustantivos en el lenguaje. Cada clase es un modelo que define un conjunto de variables -el estado, y métodos apropiados para operar con dichos datos -el comportamiento. Cada objeto creado a partir de la clase se denomina instancia de la clase. Las clases son un pilar fundamental de la programación orientada a objetos. Permiten abstraer los datos y sus operaciones asociadas al modo de una caja negra. Los lenguajes de programación que soportan clases difieren sutilmente en su soporte para diversas características relacionadas con clases. La mayoría soportan diversas formas de herencia. Muchos lenguajes también soportan características para proporcionar encapsulación, como especificadores de acceso. Una clase también puede tener una representación (metaobjeto) en tiempo de ejecución, que proporciona apoyo en tiempo de ejecución para la manipulación de los metadatos relacionados con la clase.
  • 10. Funciones (Subrutina) En informática, una subrutina o subprograma (también llamada procedimiento, función , rutina o método), como idea general, se presenta como un subalgoritmo que forma parte del algoritmo principal, el cual permite resolver una tarea específica. Algunos lenguajes de programación, como Visual Basic .NET o Fortran, utilizan el nombre función para referirse a subrutinas que devuelven un valor. Si usa el comparador predeterminado, el contenedor se comporta exactamente igual que en C++11 y versiones anteriores. En el ejemplo siguiente se muestra cómo sobrecargar operator< para permitir a los usuarios de un std::set realizar búsquedas pasando simplemente una cadena pequeña que se puede comparar con el miembro BigObject::id de cada objeto.
  • 11. Las siguientes funciones miembro de map, multimap, set y multiset se han sobrecargado para admitir búsquedas heterogéneas: find count lower_bound upper_bound equal_range
  • 12. Adaptadores de contenedor Un adaptador de contenedor es una variación de un contenedor de secuencia o asociativo que restringe la interfaz para una mayor simplicidad y claridad. Los adaptadores de contenedor no admiten iteradores. Un contenedor de queue sigue la semántica de FIFO (primero en entrar, primero en salir). El primer elemento insertado (es decir, insertado en la cola) es el primero en sacarse (es decir, en eliminarse de la cola). Para más información, vea queue (Clase). Un contenedor de priority_queue se organiza de forma que el elemento que tiene el valor más alto siempre es el primero de la cola. Para más información, vea priority_queue (Clase). Un contenedor de stack sigue la semántica de LIFO (último en entrar, primero en salir). El último elemento incrustado en la pila es el primer elemento sacado. Para más información, vea stack (Clase). Dado que los adaptadores de contenedor no admiten iteradores, no se pueden usar con los algoritmos de la biblioteca estándar de C++. Para más información, vea Algoritmos.
  • 13. Requisitos para los elementos de contenedor Normalmente los elementos insertados en un contenedor de la biblioteca estándar de C++ pueden ser simplemente de cualquier tipo de objeto si se pueden copiar. Móvil (solo elementos): por ejemplo, los vector<unique_ptr<T>> creados mediante unique_ptr<> funcionarán siempre que no llame a funciones de miembro que intenten copiarlos. Los destructores no pueden producir excepciones. Los contenedores asociativos ordenados (descritos anteriormente en este artículo) deben tener un operador de comparación público definido. (De forma predeterminada, el operador es operator<, pero se admiten incluso los que no funcionan con operator<). Algunas operaciones en los contenedores también podrían requerir un constructor público predeterminado y un operador de equivalencia público. Por ejemplo, los contenedores asociativos sin ordenar requieren la compatibilidad de algoritmos hash y de igualdad.
  • 14. Elementos contenedores de acceso El acceso a los elementos de contenedores se realiza mediante iteradores. Iteradores: Un iterador es un objeto que puede iterar sobre los elementos de un contenedor de la biblioteca estándar de C++ y proporcionar acceso a los elementos individuales. Todos los contenedores de la biblioteca estándar de C++ proporcionan los iteradores para que los algoritmos puedan tener acceso a sus elementos de manera estándar sin tener que preocuparse por el tipo de contenedor en el que están almacenados los elementos.
  • 15. Comparar contenedores Todos los contenedores sobrecargan el operador == para comparar dos contenedores del mismo tipo que tienen el mismo tipo de elemento. Se puede usar == para comparar un vector<string> con otro vector<string>, pero no se puede usar para comparar un vector<string> con una list<string> o un vector<string> con un vector<char*>. En C++98/03 se puede usar std::equal o std::mismatch para comparar tipos de contenedores o elementos diferentes. En C++11 también se puede usar std::is_permutation. Pero en todos estos casos, las funciones asumen que los contenedores tienen la misma longitud. Si el segundo intervalo es menor que el primero, se producirá un comportamiento indefinido. Si el segundo intervalo es más largo, los resultados pueden ser incorrectos porque la comparación no continúa más allá del final del primer intervalo. Comparar contenedores diferentes (C++14) En C++14 y versiones posteriores, se pueden comparar contenedores y tipos de elementos diferentes mediante una de las sobrecargas de funciones de std::equal, std::mismatch o std::is_permutation que toman dos intervalos completos. Estas sobrecargas le permiten comparar contenedores de distintas longitudes. Estas sobrecargas son mucho menos susceptibles a errores del usuario y están optimizadas para devolver false en tiempo constante cuando se comparan contenedores de longitudes diferentes. Por tanto, se recomienda usar estas sobrecargas a menos que (1) tenga un motivo muy claro para no hacerlo o (2) use un contenedor std::list, que no se beneficia de las optimizaciones de doble intervalo.
  • 16. Cabeceras estándar Contenedores <bitset> provee la clase contenedora especializada std::bitset, un arreglo de bits. <deque> provee la plantilla clase contenedora std::deque, una cola doblemente enlazada. <list> provee la plantilla clase contenedora std::list, una lista doblemente enlazada. <map> provee las plantillas clases contenedoras std::map y std::multimap, un arreglo asociativo y un arreglo asociativo múltiple respectivamente. <queue> provee la clase adaptadora contenedora std::queue, una cola de datos. <set> provee las plantillas clases contenedoras std::set y std::multiset, contenedores asociativos ordenados. <stack> provee la clase adaptadora contenedora std::stack, una pila de datos. <vector> provee la plantilla clase contenedora std::vector, un arreglo dinámico.