English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Map es C ++ Parte de STL (Biblioteca de Plantillas Estándar). Map es un contenedor asociativo de pares clave-valor ordenados, donde cada clave es única, se puede insertar o eliminar, pero no se puede modificar. Sin embargo, el valor asociado a la clave puede modificarse.
Por ejemplo:Un\tcontenedor\tde\tmap\tde\templeados,\tdonde\tla\tid\tde\templeado\tes\tla\tclave\t\ty\tnombre\tes\tvalores,\tse\tpuede\trepresentar\tcomo:
Clave | Valor |
---|---|
101 | Nikita |
102 | Robin |
103 | Deep |
104 | John |
template\t<\tclass\tKey, //map::key_type class\tT, //map::mapped_type class\tCompare\t=\tless< //map::key_compare class\tAlloc\t=\tallocator<pair> //map::allocator_type >\tclass\tmap;
key:\tEl\ttype\tde\tlos\tclaves\tque\tse\talmacenarán\t\tde\tmap.
type:\tEl\ttype\tde\tdatos\tde\tlos\tvalores\tque\tse\talmacenarán\t\tde\tmap.
compare:\tUna\tclase\tde\tcomparación\tque\tacepta\tdos\tparametros\tde\ttype\tbool\tiguales\t\ty\tdevuelve\tun\tvalor.\tEste\tparametro\tes\topcional,\tbinario\tpredicado\tless<\"key\">\tes\tel\tvalor\tpor\te defecto.
alloc:\tEl\ttype\tde\tobjeto\tdistribuidor\tde\tallocación.\tEste\tparametro\tes\topcional,\tcon\tvalor\tpor\te defecto\tallocador.
Se\tpuede\tcrear\tmap\tcon\tla\texpresión\tde\abajo:
typedef\tpair<const\tKey,\tT>\tvalue_type;
La\texpresión\tde\tabajo\tse\tusará\tpara\tcrear\ta\tclase\tde\tclave\ttype\tKeytype\tKeyyvalue\tvaluede\ttypede\ttype\tvalue_typedel\tmap\t.Un\tpunto\timportante\tes\tque\tlos\tclaves\ty\tlos\tvalores\tse\tingresen\tsiempre\tpor\tpares,\tno\tpueden\tingresar\solamente\tclaves\t\ory\tvalores.
#include\t<string.h> #include\t<iostream> #include\t<map> #include\t<utility> using\tnamespace\tstd; int\tmain() { mapEmployees; // 1)\tusando\tsímbolos\tde\tíndice\tabrray\tpara\tasignar Employees[101]\t=\t\"Nikita\"; Employees[105]\t=\t\"John\"; Employees[103]\t=\t\"Dolly\"; Employees[104]\t=\t\"Deep\"; Employees[102]\t=\t\"Aman\"; cout\t<<\"Employees[104]\t=\t<<\tEmployees[104]\t<<\tendl\t<<\tendl; cout\t<<\"tamaño\tde\tMap:\"\t<<\tEmployees.size()\t<<\tendl; cout\t<<\tendl\t<<\"orden\natural:\"\n; for(\tmap::iterator\tii=Employees.begin();\tii!=Employees.end(); ++ii) { cout << (*ii).first << ": " << (*ii).second << endl; } cout << endl << "En orden inverso:" << endl; for( map::reverse_iterator ii=Employees.rbegin(); ii!=Employees.rend(); ++ii) { cout << (*ii).first << ": " << (*ii).second << endl; } }
Salida:
Employees[104=Deep Tamaño de Map: 5 En orden natural: 101: Nikita 102: Aman 103: Dolly 104: Deep 105: John En orden inverso: 105: John 104: Deep 103: Dolly 102: Aman 101: Nikita
A continuación se muestra una lista de todas las funciones miembro de map:
Función | Descripción |
---|---|
constructors | Construcción de map |
destructors | Función destrucción de map |
operator= | Copia los elementos del map a otro contenedor de map. |
Función | Descripción |
---|---|
begin | Devuelve un iterador que apunta al primer elemento del map. |
cbegin | Devuelve un iterador constante que apunta al primer elemento del map. |
end | Devuelve un iterador que apunta al final. |
cend | Devuelve un iterador constante que apunta al final. |
rbegin | Devuelve un iterador de reversa que apunta al final. |
rend | Devuelve un iterador de reversa que apunta al punto de partida. |
crbegin | Devuelve un iterador constante de reversa que apunta al final. |
crend | Devuelve un iterador constante de reversa que apunta al punto de partida. |
Función | Descripción |
---|---|
empty | Si el map está vacío, devuelve true. |
size | Devuelve el número de elementos en el map. |
max_size | Devuelve la capacidad máxima del map. |
Función | Descripción |
---|---|
operator[] | Recupera el elemento con la clave dada. |
at | Recupera el elemento con la clave dada. |
Función | Descripción |
---|---|
insert | Inserta elementos en el map. |
erase | Borra elementos del map. |
swap | Intercambia el contenido del map. |
clear | Elimina todos los elementos del map. |
emplace | Construye un nuevo elemento y lo inserta en el map. |
emplace_hint | Construye un nuevo elemento a partir de una sugerencia y lo inserta en el map. |
Función | Descripción |
---|---|
key_comp | Devuelve una copia del objeto de comparación de claves. |
value_comp | Devuelve una copia del objeto de comparación de valores. |
Función | Descripción |
---|---|
find | Buscar elementos con la clave dada. |
count | Obtiene el número de elementos que coinciden con la clave dada. |
lower_bound | Devuelve el límite inferior del iterador. |
upper_bound | Devuelve un iterador hasta el límite superior. |
equal_range | Devuelve el rango de elementos que coinciden con la clave dada. |
Función | Descripción |
---|---|
get_allocator | Retorna el objeto allocator utilizado para construir el map. |
Función | Descripción |
---|---|
operador== | Verificar si dos map son iguales. |
operador!= | Verificar si dos map son iguales. |
operador< | Verificar si el primer map es menor que otros map. |
operador<= | Verificar si el primer map es menor o igual que otros map. |
operador> | Verificar si el primer map es mayor que otros map. |
operador>= | Verificar si el primer map es mayor que otros map. |
swap() | Intercambiar elementos de dos map. |