C# 匿名方法
阿新 • • 發佈:2020-08-27
C#匿名方法(Anonymous methods)
委託是用於引用與其具有相同標籤的方法。換句話說,可以使用委託物件呼叫可由委託引用的方法。
匿名方法(Anonymous methods)提供了一種傳遞程式碼塊作為委託引數的技術。匿名方法是沒有名稱只有主體的方法。
在匿名方法中不需要指定返回型別,它是從方法主體內的 return 語句推斷的。
編寫匿名方法的語法
匿名方法是通過使用delegate關鍵字建立委託例項來宣告的。例如:
delegate void NumberChanger(int n); ... NumberChanger nc = delegate(int x) { Console.WriteLine("Anonymous Method: {0}", x); };
程式碼塊
Console.WriteLine("Anonymous Method: {0}", x);
是匿名方法的主體。
委託可以通過匿名方法呼叫,也可以通過命名方法呼叫,即,通過向委託物件傳遞方法引數。
例如:
nc(10);
例項
delegate void Log(string msg); public static void run() { Log log = new Log(say); log("Hello World."); Log mLog= delegate (string msg) { Console.WriteLine(msg); }; mLog("Hi World."); } public static void say(string msg) { Console.WriteLine(msg); }