C#委托基礎系列原於2011年2月份發表在我的新浪博客中,現在將其般至本博客。
為了方便開發,.NET基類庫針對在實際開發中最常用的情形提供了幾個預定義好的委托,這些預定義委托用得很廣,比如在編寫lambda表達式和開發並行計算程序時經常要用到他們。
預定義泛型委托Func
[csharp]
class Program
{
double 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();
// 以為前兩個參數為int,他們運行的結果為double,最後一個參數與AddInt返回值一致
Func<int, int, double> funcInt = p.AddInt;
Console.WriteLine("funcInt的值為{0}", funcInt(100, 300));
Func<string, string, string> funcString = p.AddString;
Console.WriteLine("funcString的值為{0}", funcString("aaa", "bbb"));
}
}
class Program
{ www.2cto.com
double 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();
// 以為前兩個參數為int,他們運行的結果為double,最後一個參數與AddInt返回值一致
Func<int, int, double> funcInt = p.AddInt;
Console.WriteLine("funcInt的值為{0}", funcInt(100, 300));
Func<string, string, string> funcString = p.AddString;
Console.WriteLine("funcString的值為{0}", funcString("aaa", "bbb"));
}
}