程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#委托基礎——泛型委托

C#委托基礎——泛型委托

編輯:C#入門知識

C#委托基礎系列原於2011年2月份發表在我的新浪博客中,現在將其般至本博客。

 

泛型委托

[csharp] 
class Program 

        // 泛型委托,與普通委托類似,不同之處只在於使用泛型委托要指定泛型參數          
        public delegate T MyGenericDelegate<T>(T obj1,T obj2); 
 
        int AddInt(int x, int y) 
        {  www.2cto.com
            return x + y; 
        } 
 
        string AddString(string s1, string s2) 
        { 
            return s1 + s2; 
        } 
        
        static void Main(string[] args) 
        { 
            Program p = new Program(); 
            
            MyGenericDelegate<int> intDel; 
            intDel = p.AddInt; 
            Console.WriteLine("int代理的值是{0}", intDel(100, 200)); 
 
            MyGenericDelegate<string> stringDel; 
            stringDel = p.AddString; 
            Console.WriteLine("string代理的值是{0}", stringDel("aaa", "bbb")); 
        } 

class Program
{
        // 泛型委托,與普通委托類似,不同之處只在於使用泛型委托要指定泛型參數       
        public delegate T MyGenericDelegate<T>(T obj1,T obj2);

        int AddInt(int x, int y)
        {
            return x + y;
        }

        string AddString(string s1, string s2)
        {
            return s1 + s2;
        }
      
        static void Main(string[] args)
        {
            Program p = new Program();
          
            MyGenericDelegate<int> intDel;
            intDel = p.AddInt;
            Console.WriteLine("int代理的值是{0}", intDel(100, 200));

            MyGenericDelegate<string> stringDel;
            stringDel = p.AddString;
            Console.WriteLine("string代理的值是{0}", stringDel("aaa", "bbb"));
        }
}

為了方便開發,.NET基類庫針對在實際開發中最常用的情形提供了幾個預定義好的委托,這些預定義委托用得很廣,比如在編寫lambda表達式和開發並行計算程序時經常要用到他們。就是下面我的幾篇博客需要介紹的內容。

 

 

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved