Domingo 15 de Diciembre de 2024, 02:51
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
Como se utiliza Función Objeto? :( Es importante porfavor !!
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Como se utiliza Función Objeto? :( Es importante porfavor !! (Leído 874 veces)
Phass
Nuevo Miembro
Mensajes: 13
Como se utiliza Función Objeto? :( Es importante porfavor !!
«
en:
Miércoles 23 de Junio de 2010, 13:47 »
0
Hola, necesito hacer una práctica para aprobar una asignatura de la carrera en la que me piden usar una función objeto. Yo tengo el código siguiente:
Código: C++
#include <iostream>
#include <vector>
#include <iterator>
#include <algorithm>
#include <map>
using
namespace
std
;
map
<
string,
int
>
d
;
void
mifuncion
(
pair
<
string, string
>
t
)
{
map
<
string,
int
>
::
iterator
i
;
i
=
d.
find
(
t.
first
)
;
if
(
i
!
=
d.
end
(
)
)
// Existe clave
d
[
t.
first
]
+
=
1
;
else
d.
insert
(
i, pair
<
string,
int
>
(
t.
first
,
1
)
)
;
}
int
main
(
)
{
multimap
<
string, string
>
multi
;
cout
<<
"Vaya insertando las claves en la forma K1, K2"
<<
endl
;
cout
<<
"Presione ctrl+z para finalizar"
<<
endl
;
string k1, k2
;
while
(
cin
>>
k1
)
{
cin
>>
k2
;
multi.
insert
(
pair
<
string, string
>
(
k1, k2
)
)
;
}
cout
<<
endl
<<
"Elementos del multidiccionario: "
<<
endl
;
for
(
multimap
<
string, string
>
::
iterator
it
=
multi.
begin
(
)
;
it
!
=
multi.
end
(
)
;
++
it
)
{
cout
<<
" ["
<<
(
*
it
)
.
first
<<
", "
<<
(
*
it
)
.
second
<<
"]"
<<
endl
;
}
for_each
(
multi.
begin
(
)
, multi.
end
(
)
, mifuncion
)
;
cout
<<
endl
<<
"Elementos del diccionario: "
<<
endl
;
for
(
map
<
string,
int
>
::
iterator
it
=
d.
begin
(
)
;
it
!
=
d.
end
(
)
;
++
it
)
{
cout
<<
" ["
<<
(
*
it
)
.
first
<<
", "
<<
(
*
it
)
.
second
<<
"]"
<<
endl
;
}
return
0
;
}
Cómo es entonces haciéndolo con una función objeto sin necesidad de declarar el diccionario global?
Muchas gracias !!
Tweet
Amilius
Miembro HIPER activo
Mensajes: 665
Re: Como se utiliza Función Objeto? :( Es importante porfavor !!
«
Respuesta #1 en:
Jueves 24 de Junio de 2010, 01:33 »
0
Como el objeto función sólo tendría que tener un parámetro para que funcione con "for_each()" podrías crear un par que contenga el par del tipo requerido por el mapa y una referencia al mapa que quieres usar.
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
Como se utiliza Función Objeto? :( Es importante porfavor !!