Delegados c sharp

Solo disponible en BuenasTareas
  • Páginas : 2 (431 palabras )
  • Descarga(s) : 0
  • Publicado : 8 de junio de 2011
Leer documento completo
Vista previa del texto
C# - Delegados

javierj@us.es

Índice
1. Introducción 2. Un día en la vida de un delegado. 3. Manejadores de eventos

1

1. Introducción.

Introducción
Antes de presentar los delegadosvamos a plantear un problema. Tengo un formulario, un usuario pulsa un botón. ¿qué pasa?. ¿Cómo resuelve Java este problema?.

2

Introducción
No necesitamos toda una clase para algo tansencillo. Un método nos sirve perfectamente. Eso es un delegado. La idea es similar a los punteros a funciones de C / C++.

Introducción
Un delegado es un tipo de dato definido por el usuario. Permiteguardar (en invocar) métodos de otra clase cuya cabecera coincida con la definición de delegado.

3

Introducción
Un ejemplo:
class Class1{ delegate double operacion(double param1, double param2);static double Multiplica(double param1, double param2) { return param1 * param2; } static double Divide(double param1, double param2) { return param1 / param2; } [STAThread] static void Main(string[]args) { operacion op; string input; Console.Write("Escribe un número:"); input = Console.ReadLine(); double param1 = Convert.ToDouble(input); Console.Write("Escribe otro número:"); input =Console.ReadLine(); double param2 = Convert.ToDouble(input); Console.WriteLine("(M)ultiplica o (D)ivide:"); input = Console.ReadLine(); if (input == "M") op = new operacion(Multiplica); else op = newoperacion(Divide); Console.WriteLine("Result: {0}", op(param1, param2)); } }

}

Introducción
¿Cómo declaramos un delegado para métodos que no devuelvan nada y no tengan argumentos?

public delegate voidV();

4

2. Un día en la vida de un delegado.

Delegados
Los delegados tienen visibilidad. Los delegados se crean con el operador new. El constructor del delegado espera el nombre del método.Comprobación de tipos en tiempo de ejecución.

5

Delegados
Los delegados son clases. Como cualquier clase, hereda de Object y tiene todos sus métodos disponibles.

Delegados
Los delegados...
tracking img