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
 

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").

Preguntas similares