/* 定義一個 delegate */ public delegate string MyDel(int id); /* 宣告一個 Method */ public static string MethodA(int id) { return " { " + id + " } "; } /* 將 MethodA 指派給一個 MyDel */ MyDel fu = MethodA; /* 接著就可以這樣呼叫 delegate */ string result = fu(22); System.Console.WriteLine(result); /* 用 delegate 關鍵字建立 MyDel */ MyDel fu = delegate(int id) { return " { " + id + " } "; }; /* 用 Lambda 語法建立 MyDel */ MyDel fu = (int id) => { return " { " + id + " } "; }; /* 因為 MyDel 已經定義參數為 int 了,所以可以省略 int */ MyDel fu = (id) => { return " { " + id + " } "; }; /* 因為是單參數,所以可以省略小刮號 */ MyDel fu = id => { return " { " + id + " } "; }; /* 接著是單純的 return,所以可以省略大刮號跟 return */ MyDel fu = id => " { " + id + " } ";
Ref:
匿名函式 (C# 程式設計手冊)
使用委派 (C# 程式設計手冊)
沒有留言:
張貼留言
你好!歡迎你在我的 Blog 上留下你寶貴的意見。