Sunday, September 30, 2007

Example of a Delegate.

Sample Program using Delegate :

public delegate double Delegate_Prod(int a,int b);

class Class1{static double fn_Prodvalues(int val1,int val2)

{
return val1*val2;
}
static void Main(string[] args)

{

//Creating the Delegate InstanceDelegate_Prod delObj = new Delegate_Prod(fn_Prodvalues);
Console.Write("Please Enter Values");
int v1 = Int32.Parse(Console.ReadLine());int v2 = Int32.Parse(Console.ReadLine());
//use a delegate for processing

double res = delObj(v1,v2);Console.WriteLine ("Result :"+res);Console.ReadLine();

}

}

Explanation:

Here I have used a small program which demonstrates the use of delegate.

The delegate "Delegate_Prod" is declared with double return type and which accepts only two integer parameters.

Inside the Class the method named fn_Prodvalues is defined with double return type and two integer parameters.(The delegate and method is having the same signature and parameters type)

Inside the Main method the delegate instance is created and the function name is passed to thedelegate instance as following.

Delegate_Prod delObj = new Delegate_Prod(fn_Prodvalues);

After this we are accepting the two values from the user and passing those values to the delegate as we do using method .

delObj(v1,v2);

Here delegate object encapsulates the method functionalities and return the result as we specifiedin the method.

No comments: