C#委托-委托作为方法的参数

委托其实就像个中介,用于将方法传递给其他方法作为参数:

using System;

public delegate void mydelegate(string s); //声明参数为字符串无返回值的委托

class Program

{

static void Main()

{

Program p = new Program(); //实例化类

mydelegate my1 = new mydelegate(p.show2); //用被调用的方法实例化委托

p.show(my1, "abcdefg"); //类实例调用方法

Console.ReadLine();

}

private void show(mydelegate my, string s)

//定义调用的方法,其中第一个参数为委托

{

my(s);

}

private void show2(string s) //定义被调用的方法

{

Console.WriteLine(s);

}

}