C# 语言规范--1.10 委托
|
委托适用于那种在某些其他语言中需用函数指针来解决的情况(场合)。但是,与函数指针不同,委托是面向对象和类型安全的。 委托声明定义一个类,它是从 软件开发网 www.mscto.com 委托实例的一个有趣且有用的属性是:它既不知道也不关心有关它所封装的方法所属的类的种种详情;对它来说最重要的是这些方法与该委托的类型兼容。这使委托非常适合“匿名”调用。这是一个强大的功能。 定义和使用委托分三个步骤:声明、实例化和调用。委托用委托声明语法来声明。示例 delegate void SimpleDelegate(); 声明一个名为 示例 class Test
{
static void F() {
System.Console.WriteLine("Test.F");
}
static void Main() {
SimpleDelegate d = new SimpleDelegate(F);
d();
}
}
创建一个 这样做(为方法创建一个委托,然后立即通过这个委托调用该方法)并没有太大意义,因为直接调用方法更简单。当涉及它的匿名特性时,委托才真正显示出它的效用。示例 void MultiCall(SimpleDelegate d, int count) {
for (int i = 0; i < count; i ) {
d();
}
}
显示了一个重复调用 软件开发网 www.mscto.com 源代码网推荐 源代码网供稿. |
