C#委托的使用

来源:互联网 发布:sql 事务回滚 编辑:程序博客网 时间:2024/05/22 08:03

委托是一种动态调用方法的类型,与类、接口和数组相同,都属于引用型。在C#程序中,可以声明委托类型、创建委托的实例(即委托对象)、把方法封装于委托对象之中,这样通过该对象就可以调用方法了。一个完整的方法具有名字、返回值和参数列表,那么用来引用该方法的委托野要求必须具有同样的参数和返回值。

委托对象本质上代表了方法的引用(即内存地址)。在.NET Framework中,委托具有以下特点:

1.委托类似于C++的函数指针,但与指针不同的是,委托时完全面向对象的,是安全的数据类型。

2.委托允许将方法作为参数进行传递。

3.委托可用于定义回调方法。

4.委托可以把多个方法连接在一起,这样在事件触发时,可以同时启动多个事件处理程序。

委托的声明、实例化和使用:

public delegate int calculate(int x,inty);    ---------声明

例如有函数

int multiply(int x,int y)

{

return x*y;

}

int add(int x,int y)

{

return x+y;

}

        则用委托来引用可用以下语句:

calculate a=new calculate(multiply);

calculate b=new calculate(add);

实例化之后,就可以直接使用委托了,例如int result=a(3,6);执行之后,result值变为3*6即18.

0 0
原创粉丝点击