C#委托

//////委托
委托和类一样,是一种用户自定义的类型。但类表示的是数据和方法的集合,而委托则持有一个或多个方法,以及一系列预定义操作
//"delegate"关键字
//关于加减乘除的委托,返回类型都是double,并且参数都有两个参数都是为double
//语法:delegate 方法的返回类型 委托名字 (方法的参数)
//类外
delegate double DelOperator(double num1,double num2);
static double Add(double a,double b)
{
    return a+b;
}
static double Div(double c,double d)
{
    return c-d;
}
//使用委托需要实例化委托对象
static void Main(string[] args)
{
    //在实例化委托的时候会把方法名作为一个参数传进来
    //两数相加
    DelOperator delOp=new DelOperator(Add);
    //调用委托的时候,实际上是调用委托所指向的这个方法
    double result=delOp.Invoke(3,5);
    //另一种方法调用
    double result=delOp(3,5);
    Console.WriteLine("委托调用的方法执行结果:"+result)
    //两数相减
    delOp+=new DelOperator(Div);  //新的委托方法
    Console.WriteLine("委托调用的方法执行结果:"+result)
    //移除方法
    delOp-=new DelOperator(Div);
}

 

posted @ 2019-09-02 10:17  LBC不认输  阅读(94)  评论(0编辑  收藏  举报