委托1
//什么是委托
//首先要知道什么是委托,用最通俗易懂的话来讲,你就可以把委托看成是用来执行方法(函数)的一个东西。
//如何使用委托
//在使用委托的时候,你可以像对待一个类一样对待它。即先声明,再实例化。只是有点不同,类在实例化之后叫对象或实例,但委托在实例化后仍叫委托。
delegate double MathsOp(double x);
//这就声明了一个委托,意义:任何一个返回值为double,且只有一个形参为double的函数,都可以用这个委托来调用。
//注意:委托的声明位置在namespace里面,类的外面。其实,委托的声明也可以在类的里面,甚至是任何一个可以声明类的地方。
class Start
{
[STAThread]
static void Main(string[] args)
{
//有了这样一个方法,我们就可以实例化一个委托了:
//MathsOp operation = new MathsOp(MyDelegate.MultiplyBy2);//委托实例化
MathsOp operation = MyDelegate.MultiplyBy2;//委托推断
//在实例化完一个委托之后,就可以用这个委托来调用方法了:
double x = 1.23;
double result = operation(x);
Console.WriteLine("{0} multiply by 2 is {1}", x, result);
Console.Read();
}
}
public class MyDelegate
{
//首先我们要先有一个满足委托声明的方法,假设一个返回一个数的2倍的方法
public static double MultiplyBy2(double x)
{
return x * 2;
}
}

浙公网安备 33010602011771号