C#委托基础4——泛型委托Func

C#委托基础系列原于2011年2月份发表在我的新浪博客中,现在将其般至本博客。

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

 

预定义泛型委托Func

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"));
        }
}


本文参考自金旭亮老师的《.NET 4.0面向对象编程漫谈》有关代理的内容
上一篇:C# AppDomain 类


下一篇:Android Framework 学习(八):屏幕刷新机制