一般都是匿名的委托方式,直接传参数进去:
例如:
Funct=(int x, string b) => (x.ToString() + b);就等于private string deletegate TestString(int x, string b );//定义一个委托,返回值为string类型
private string test(int x,string b){
return x.ToString() + b;
}
TestString t=new TestString(test);
t(44,"bbb");
Func就是定义一个委托=private string deletegate TestString(int x string b ),前两个参数是相应方法的参数类型,最后一个为方法的返回类型。
using System;
public class GenericFunc
{
public static void Main()
{
// Instantiate delegate to reference UppercaseString method
FuncconvertMethod = UppercaseString;//非lambda
//或者
FuncconvertMethod2 = (s)=>{return s.ToUpper();};//lambda表达式
string name = "Dakota";
// Use delegate instance to call UppercaseString method
Console.WriteLine(convertMethod(name));
}
private static string UppercaseString(string inputString)
{
return inputString.ToUpper();
}
}
func是个泛型委托,上面是采用 string作为返回值和参数的版本