TEORÍA
El objeto «map» es un objeto asociativo, esto es, asocia un valor a otro, normalmente utilizado para indexar valores teniendo pares «clave->valor».
PRÁCTICA
Los ejemplos a continuación utilizan un par «int->string» pero se pueden utilizar otros valores en la definición del mapa.
#include <map>
using namespace std;
//...
// INICIALIZACIÓN
map<int, string> mi_mapa;
mi_mapa[0] = "blah";
mi_mapa[1] = "Cacahué";
// ACCESO
cout << mi_mapa[1] << endl;
// BORRADO
mi_mapa.erase( mi_mapa.find(1) );
//Se borra la entrada del índice 1 por completo (no se queda a NULL ni se queda vacío, desaparece la entrada y el valor).
// RECORRER
for (auto item : mi_mapa) {
cout << item.first << " => " << item.second << endl;
}
// VACIADO
mi_mapa.clear();
// TAMAÑO
int tamanio = mi_mapa.size();
// ¿ESTÁ VACÍO?
bool mapa_vacio = mi_mapa.empty();
// ¿EXISTE ELEMENTO?
if(mi_mapa.find(666) == mi_mapa.end()){
cout << "Elemento no encontrado" << endl;
}
// ó contar el número de ocurrencias en el mapa
if(mi_mapa.count(666)==0) //Elemento no encontrado
//Es más eficiente el primer método (find en lugar de count)
//https://stackoverflow.com/a/25490408
Deja una respuesta
Lo siento, debes estar conectado para publicar un comentario.