C#委托基础3——泛型委托

来源:互联网 发布:淘宝助理图片空间上传 编辑:程序博客网 时间:2024/06/08 10:43

泛型委托

[csharp] view plain copy
 print?
  1. class Program  
  2. {  
  3.         // 泛型委托,与普通委托类似,不同之处只在于使用泛型委托要指定泛型参数          
  4.         public delegate T MyGenericDelegate<T>(T obj1,T obj2);  
  5.   
  6.         int AddInt(int x, int y)  
  7.         {  
  8.             return x + y;  
  9.         }  
  10.   
  11.         string AddString(string s1, string s2)  
  12.         {  
  13.             return s1 + s2;  
  14.         }  
  15.          
  16.         static void Main(string[] args)  
  17.         {  
  18.             Program p = new Program();  
  19.              
  20.             MyGenericDelegate<int> intDel;  
  21.             intDel = p.AddInt;  
  22.             Console.WriteLine("int代理的值是{0}", intDel(100, 200));  
  23.   
  24.             MyGenericDelegate<string> stringDel;  
  25.             stringDel = p.AddString;  
  26.             Console.WriteLine("string代理的值是{0}", stringDel("aaa""bbb"));  
  27.         }  
  28. }  

为了方便开发,.NET基类库针对在实际开发中最常用的情形提供了几个预定义好的委托,这些预定义委托用得很广,比如在编写lambda表达式和开发并行计算程序时经常要用到他们。就是下面我的几篇博客需要介绍的内容。

转自:点击打开链接

0 0
原创粉丝点击