Beispiel #1
0
        protected void Button2_Click(object sender, EventArgs e)
        {
            //MyDelegate d = new MyDelegate(Sum);
            // int result = d.Invoke(12, 15);
            //Response.Write("<srcipt>alert('" + result + "')</srcipt>");
            MyDelegateString d = new MyDelegateString(ShowText);

            //string msg = d("Hello World..."); // for string
            d("Hello World...");
            // Response.Write("<srcipt>alert('" + msg + "')</srcipt>");
            //Console.WriteLine(result);
            //Console.ReadLine();
        }
Beispiel #2
0
        static void Main(string[] args)
        {
            //MyDelegate myDelegate = delegate () { Console.WriteLine("匿名函数"); };
            //myDelegate();
            //MyDelegate myDelegate1 = DoSth;
            //myDelegate1();//↑↓ 反编译为相同声明形式
            //MyDelegate myDelegate2 = new MyDelegate(DoSth);
            //myDelegate2();
            //拉姆达表达式
            MyDelegate mdl = () => { Console.WriteLine("拉姆达表达式"); };

            mdl();
            MyAddDelegate myAddDelegate = (int n1, int n2) => { return(n1 + n2); };

            Console.WriteLine(myAddDelegate(5, 6));
            MyDelegateString myDelegateString = x => Console.WriteLine(x);

            myDelegateString("精简写法");
            MyDelegateStr myDelegateStr = xy => xy + "带返回值的拉姆达表达式";

            Console.WriteLine(myDelegateStr("简化"));
            Console.ReadKey();
        }