Autor
|
Tema: [solucionado]Duda al insertar en un Map (Leído 1,808 veces)
|
josevc
Desconectado
Mensajes: 15
|
Hola,
Mi duda es la siguiente, supongamos que tengo esta función:
void Alumno::asocia(Asignatura& a, Grupo& g) { AsigGrupo.insert(std::make_pair(&a,&g)); //Opción 1
AsigGrupo[&a]=&g; //Opción 2 }
Teniendo previamente en la clase el map definido como:
typedef std::map<Asignatura*,Grupo*> AS; AS AsigGrupo;
---------
¿Cuál serían las diferencias entre la "opción 1" y la "opción 2"? ¿Cuál es más conveniente usar?
Muchas gracais.
|
|
« Última modificación: 23 Mayo 2015, 20:34 pm por josevc »
|
En línea
|
|
|
|
Peregring-lk
Desconectado
Mensajes: 50
|
En la opción 1, si la clave ya existe (si `&a` ya existe en el contenedor), la pareja no se inserta.
En la opción 2, si la clave ya existe, se modifica su valor por `&g`. Si no existe, se crea la clave `&a`, y se le inserta `&g` como valor.
En definitiva, no es una cuestión de conveniencia, sino según tu caso. Si "no quieres" modificar el valor en caso de que ya exista, opción 1. Si lo que quieres es crear/sobreescribir, opción 2.
|
|
|
En línea
|
|
|
|
josevc
Desconectado
Mensajes: 15
|
Muchísimas gracias !
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
[SOLUCIONADO]Insertar imagen en access
.NET (C#, VB.NET, ASP)
|
diego_lp
|
2
|
16,182
|
3 Enero 2010, 21:43 pm
por diego_lp
|
|
|
Solucionado - Como insertar Unicode en vb.net?
.NET (C#, VB.NET, ASP)
|
WHK
|
5
|
7,962
|
7 Noviembre 2010, 16:32 pm
por raul338
|
|
|
(Solucionado)Insertar datos en un textarea
Desarrollo Web
|
Zeroql
|
3
|
10,251
|
23 Julio 2011, 20:52 pm
por Zeroql
|
|
|
no puedo insertar en BD MySQL(solucionado)
PHP
|
basickdagger
|
6
|
3,199
|
7 Marzo 2013, 07:10 am
por basickdagger
|
|
|
insertar en Google SpreadSheet [SOLUCIONADO]
Dudas Generales
|
Maurice_Lupin
|
0
|
2,397
|
4 Abril 2014, 01:04 am
por Maurice_Lupin
|
|