delegate int Add(int firstNumber, int secondNumber);
NET 1.x (1.0 - 1.1) (C# 1.0)
private int AddNumbers(int firstNumber, int secondNumber)
{
return firstNumber + secondNumber;
}
Add add = new Add(this.AddNumbers);
int result = add(1,2));
.NET 2.0 - 3.0 (C# 2.0):anonymous methods
Add add = delegate(int firstNumber, int secondNumber)
{
return firstNumber + secondNumber;
};
.NET 3.5 (Type 1) (C# 3.0):Lambda
Add add = (firstNumber, secondNumber) => firstNumber + secondNumber;
.NET 3.5 (Type 2) (C# 3.0):Lambda
public delegate TResult Func<T1, T2, TResult>(T1 arg1, T2 arg2);
Func<int, int, int> add = (firstNumber, secondNumber) => firstNumber + secondNumber;