Metodos anonimos

02/09/2007 - 13:22 por Carla Rincon | Informe spam
Hola todos, estoy iniciandome en esto mas leyendo ejemplos de la beta de
VS2008 y para aprender voy conceptualizando las cosas primero. Alguien me
puede decir con algun ejemplo o explicacion sencilla que es un metodo
anonimo pues como que no realizo bien el concepto?

Carla Rincon

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
02/09/2007 - 13:42 | Informe spam
"Carla Rincon" <_> wrote in message
news:
Hola todos, estoy iniciandome en esto mas leyendo ejemplos de la beta de
VS2008 y para aprender voy conceptualizando las cosas primero. Alguien me
puede decir con algun ejemplo o explicacion sencilla que es un metodo
anonimo pues como que no realizo bien el concepto?



No hace falta que te vayas al VS2008. Los métodos anónimos ya estaban en
C# 2.0 (VS2005). Básicamente sirven para crear un delegado que ejecute
cierto código sin tener que alojar dicho código dentro de un método
separado. Por ejemplo, imaginemos este código:

class SomeClass
{
delegate void SomeDelegate();
public void InvokeMethod()
{
SomeDelegate del = new SomeDelegate(SomeMethod);
del();
}
void SomeMethod()
{
MessageBox.Show("Hello");
}
}


Si queremos convertir "SomeMethod" en anónimo, lo podemos sustituir por el
siguiente código:

class SomeClass
{
delegate void SomeDelegate();
public void InvokeMethod()
{
SomeDelegate del = delegate()
{
MessageBox.Show("Hello");
};
del();
}
}


Como ves, hemos movido el contenido del método a la declaración del
delegado, con lo cual ya no existe por ningún sitio el nombre del método (de
ahí lo de "anónimo").
Respuesta Responder a este mensaje
#2 Carla Rincon
02/09/2007 - 15:06 | Informe spam
Ahora ya esta mas claro. Te lo agradezco mucho.


Carla Rincon


"Alberto Poblacion"
escribió en el mensaje news:uA4$
"Carla Rincon" <_> wrote in message
news:
Hola todos, estoy iniciandome en esto mas leyendo ejemplos de la beta de
VS2008 y para aprender voy conceptualizando las cosas primero. Alguien
me puede decir con algun ejemplo o explicacion sencilla que es un metodo
anonimo pues como que no realizo bien el concepto?



No hace falta que te vayas al VS2008. Los métodos anónimos ya estaban
en C# 2.0 (VS2005). Básicamente sirven para crear un delegado que ejecute
cierto código sin tener que alojar dicho código dentro de un método
separado. Por ejemplo, imaginemos este código:

class SomeClass
{
delegate void SomeDelegate();
public void InvokeMethod()
{
SomeDelegate del = new SomeDelegate(SomeMethod);
del();
}
void SomeMethod()
{
MessageBox.Show("Hello");
}
}


Si queremos convertir "SomeMethod" en anónimo, lo podemos sustituir por el
siguiente código:

class SomeClass
{
delegate void SomeDelegate();
public void InvokeMethod()
{
SomeDelegate del = delegate()
{
MessageBox.Show("Hello");
};
del();
}
}


Como ves, hemos movido el contenido del método a la declaración del
delegado, con lo cual ya no existe por ningún sitio el nombre del método
(de ahí lo de "anónimo").


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida