C#委托
class Weituo
{
public delegate void Weituo1(string name);//定义一个委托
public static void Baituo(string name)//被拜托的事情,返回值,和类型都要和委托一致
{
Console.WriteLine("我是被拜托的事情"+name);//输出内容
}
public static void Baituo1(string name)//被拜托的事情,返回值,和类型都要和委托一致
{
Console.WriteLine("我是被拜托的事情2" + name);//输出内容
}
static void Main(string[] args)
{
Weituo1 weituo = new Weituo1(Baituo);//实例化委托,委托框里要填运行的方法
weituo += Baituo1;//增加一个委托数
weituo -= Baituo1;//减少一个委托数
weituo(": 这里是被调用的");//运行委托
}
}
输出结果为
我是被拜托的事情: 这里是被调用的
我是被拜托的事情2: 这里是被调用的
当有返回值时,无法一次性打印多个返回值
```csharp
class Weituo
{
public delegate string Weituo1(string name);//定义一个委托
public static string Baituo(string name)//被拜托的事情,返回值,和类型都要和委托一致
{
//Console.WriteLine("我是被拜托的事情"+name);//输出内容
return "123 ";
}
public static string Baituo1(string name)//被拜托的事情,返回值,和类型都要和委托一致
{
//Console.WriteLine("我是被拜托的事情2" + name);//输出内容
return "456";
}
static void Main(string[] args)
{
Weituo1 weituo = new Weituo1(Baituo);
//Console.WriteLine(weituo("测试随意填的,无所谓"));
weituo += Baituo1;//增加一个委托数
//weituo -= Baituo1;//减少一个委托数
//运行委托
Console.WriteLine(weituo("测试随意填的,无所谓"));
}
}
输出结果为456