使用Func<>和Action简化委托

/// <summary>
        /// 入口
        /// </summary>
        public void Run()
        {
            TestDelegate t = test;
            t("a",10);
            Action<string, int> actiont = test;
            actiont("a", 10);
            //以上两种方法,完全相等,第二种更为简洁
            Test2Delegate t2 = calc;
            calc(1,3);
            Func<int, int, int> funct2 = calc;
            funct2(1, 3);
            //以上两种方法,完全相等,第二种更为简洁
        }

        public static void test(string a, int b)
        {
            Console.WriteLine(a+b);
        }
        public static int calc(int a, int b)
        {
            return a + b;
        }

        public delegate void TestDelegate(string a,int b);
        public delegate int Test2Delegate(int a, int b);

 

posted @ 2015-04-07 11:18  Xdoudou  阅读(173)  评论(0编辑  收藏  举报