ICF222 / Laboratorio

Laboratorio del curso SI
0 stars 2 forks source link

No logro imprimir el primer elemento de mi SET #1

Open alphadx opened 4 years ago

alphadx commented 4 years ago

En mi programa (el código a continuación) creo que logro crear el map con la llave 1 y el contenido del set 3,2 y 100. Sin embargo, una vez intento leerlo no consigo obtener ni siquiera el primer elemento del set.

#include <iostream>
#include <map>
#include <set>

using namespace std;

int main() {
  map<int, set<int>> mymap;
  mymap[1].insert(3);
  mymap[1].insert(2);
  mymap[1].insert(100);
  mymap[2].insert(3);
  cout << mymap[1].begin() << endl;
}

Acá otro ejemplo cuando lo hago con números y no tengo problema para leer el map. La salida es 100.

int main() {
  map<int, int> mymap;
  mymap[1] = 100;
  mymap[2] = 200;

  cout << mymap[1] << endl;
}

Muchas gracias. UwU

Hormash commented 4 years ago

Hola @alphadx

El problema es que al utilizar un .beguin no obtienes el dato ya que esta en un puntero o dirección de memoria. Por lo que debes agregar un * al comienzo para poder acceder al dato como tal.

cout << *mymap[1].begin() << endl;