delegates in c#
//start with Delegate
using System;
using System.IO;
class Delegate
{
//create delegate using delegate keyword
public delegate void HelloMethod(string str);
//Remove delegate Keyword it will be normal method declaration
public static void Main(String [] args)
{
//function poiting to delegate instance
HelloMethod delegateInstance = new HelloMethod(print);
//calling delegate which invokes function print()
delegateInstance("Hey there! Iam delegate method");
}
public static void print(string delegateStr)
{
Console.WriteLine(delegateStr);
}
}
//Information on delegate
//Delegate is a type safe function pointer which means can point a function to
//the delegate when delegate get invokes function automatically invokes since
//function is pointed to the delegate