正在阅读:.NET技术学习:C#中的委托.NET技术学习:C#中的委托

2004-02-14 09:34 出处:PConline 作者:lotusswan/CSDN 责任编辑:linjixiong
简介 委托是C#中的一种引用类型,类似于C/C++中的函数指针。与函数指针不同的是,委托是面向对象、类型安全的,而且委托可以引用静态方法和实例方法,而函数指针只能引用静态函数。委托主要用于 .NET Framework 中的事件处理程序和回调函数。 一个委托可以看作一个特殊的类,因而它的定义可以像常规类一样放在同样的位置。与其他类一样,委托必须先定义以后,再实例化。与类不同的是,实例化的委托没有与之相应的术语(类的实例化称作对象),作为区分我们将实例化的委托称为委托实例。 函数指针 一个函数在编译时被分配给一个入口地址,这个入口地址就称为函数的指针,正如同指针是一个变量的地址一样。 函数指针的用途很多,最常用的用途之一是把指针作为参数传递到其他函数。我们可以参考下面的例子进一步理解函数指针作为参数的情况: # include  int max(int x,int y) { return (x>y?x:y); } int min(int x,int y) { return(x }  int sub(int x, int y)  {  return(x+y);  } int minus(int x,int y) { return(x-y); } void test(int (*p)(int,int),int (*q)(int,int),int a,int b) { int Int1,Int2; Int1=(*p)(a,b); Int2=(*q)(a,b); printf("%d,\t%d\n",Int1,Int2); } void main() { test(max,min,10,3);  test(sub,minus,10,3); }
键盘也能翻页,试试“← →”键

关注我们

最新资讯离线随时看 聊天吐槽赢奖品