using System;
delegate void MyDel(int value);//声明了一个委托 ,返回值为void,接受的参数为int
//即:这个委托可以代表这样的一种函数:没有返回值,并且接受一个参数类型为int的参数
namespace Chapter13Delegate_131WhatisaDelegate
{
class Program
{
void PrintLow(int value)//返回值是void 参数是一个int 类型的函数
{
Console.WriteLine("{0}-Low Value",value);
}
void PrintHigh(int value)//返回值是void 参数是一个int 类型的另外一个函数
{
Console.WriteLine("{0}-High Value", value);
}
static void Main(string[] args)
{
Program program = new Program();
MyDel del;
//随机数生成 0-----99
Random rand = new Random();
int randomValue = rand.Next(99);
//创建一个包含PrintLow或PrintHigh的委托对象并将其赋值给del变量
del = randomValue < 50 ? new MyDel(program.PrintLow) : new MyDel(program.PrintHigh);
//上面是把委托赋给了某个函数,或者说这个委托是给了谁?给了哪个函数确定下来了,但是并没有调用
del(randomValue);//执行委托
//上面的语句才是真正的用这个委托 加上这个 随机值来运行了这个委托,也就运行了委托所代表的那个函数。
Console.WriteLine("Hello World!");
}
}
}
C#图解教程(第四版)_13章委托:什么是委托?P238
最新推荐文章于 2025-12-19 15:54:39 发布
1282

被折叠的 条评论
为什么被折叠?



