亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

C# 匿名方法基礎回顧

2019-10-29 21:16:08
字體:
來源:轉載
供稿:網友

目錄

  1. 簡介
  2. 匿名方法的參數使用范圍
  3. 委托示例

簡介

在 C# 2.0 之前的版本中,我們創建委托的唯一形式 -- 命名方法。

而 C# 2.0 -- 引進了匿名方法,在 ≥ C# 3.0 的版本中,我們會用 Lambda 表達式進行取代匿名方法,并且用 Lambda 表達式作為編寫內聯代碼的首選方式,因為它更簡潔。

匿名方法是,顧名思義,匿名方法就是沒有名稱的方法。匿名方法最明顯的好處就是:可以降低額外另寫一個方法的工作量;另外一個好處就是可以直接訪問調用者的變量,從而降低傳參的復雜度。

匿名方法,它不是一個事先定義的方法,而是使用一個委托的代碼塊,在使用時,和普通方法并沒有什么區別,但是匿名方法可以在一定程度上減少系統開銷。

匿名方法,關鍵字:delegate。

匿名方法,使用場景:通常在,①需要一個臨時的方法,并且該方法使用的次數極少;②該方法的代碼很短,不長。

【注意】有一種情況,匿名方法它提供了 Lambda 表達式所沒有具備的功能。 那就是,你可以使用匿名方法來忽略參數列表。 這意味著匿名方法可以轉換為具有各種簽名的委托,而這些,對于 Lambda 表達式來說,幾乎是完全不可能的。

 想要將代碼塊作為委托參數進行傳遞,使用匿名方法是目前唯一的方式。

示例一:

  // 創建一個點擊事件  button1.Click += delegate(Object o, EventArgs e)       { MessageBox.Show("Click!"); };

示例二:

 // 創建一個委托. delegate void MyDel(int x); // 使用匿名方法并將委托實例化 MyDel del = delegate(int k) { /* ... */ };

使用匿名方法,由于無需單獨額外創建方法,從而減少了上述兩個示例實例化委托所需要的編碼開銷。

例如,如果創建方法所需的系統開銷并不是必要的,則指定代碼塊(而不是委托)就會非常有用。

我在這里通過一個示例演示,如何用一個匿名方法的形式創建并啟動一個新的線程:

//新建線程啟動的示例    void Start() {     //聲明  Thread thread = new Thread   (delegate()    {     Write("Hello, ");     WriteLine("Fanguzai!");    });     //啟動  thread.Start(); }

匿名方法的參數使用范圍

匿名方法的參數使用范圍:匿名方法塊。

如果目標在塊外部,你在匿名塊內部使用 -- 跳轉的關鍵字(類似 goto/break/continue),就是錯誤的;如果目標在塊內部,你在匿名塊外部使用 -- 跳轉的關鍵字(類似 goto/break/continue),也是錯誤的。

如果局部變量和參數的范圍已經包含匿名方法聲明,則該局部變量和參數將被稱為該匿名方法的“外部”(外界)變量。你看,這個代碼段中的 num 就是一個外部(外界)變量:

  int num = 250;  MyDel del = delegate() { WriteLine("#:{0}", --num); };

這個外部變量的所引用的 num,將會被認為是在創建委托時進行捕獲的,它與我們常用的本地變量不同,這個外部變量的生存期 -- 引用該匿名方法的委托對象被 .NET 的 CLR 的垃圾回收機制進行回收。

【注意】匿名方法無法訪問外部(外界)范圍內,帶 ref 與 out 關鍵字的參數。

【注意】在匿名塊中不能訪問 unsafe 的代碼。

【注意】在 is 運算符的左邊,是用不了匿名的方法的。

 委托示例

下面的示例,將會同時使用匿名方法和命名方法去調用委托時:

// 聲明委托 delegate void MyDel(string s); class MyClass {  static void Main()  {   // 使用匿名方法實例化委托   MyDel p = delegate (string msg)   {    Console.WriteLine(msg);   };   // 直接調用   p("使用匿名方法調用委托。");   // 上面的形式再簡寫   p = Console.WriteLine;   Console.WriteLine("上面簡寫的形式");   // 使用"Do"的靜態方法的委托實例化。   p = new MyDel(MyClass.Do);   // 使用舊的風格調用委托   p("使用命名方法調用委托。");   Console.Read();  }  // 后續用于委托調用  static void Do(string msg)  {   Console.WriteLine(msg);  } }

C#,匿名方法

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持VEVB武林網!


注:相關教程知識閱讀請移步到c#教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久久久亚洲精品不卡| 国产精品久久久av| 亚洲影院高清在线| 亚洲日本成人女熟在线观看| 秋霞成人午夜鲁丝一区二区三区| 揄拍成人国产精品视频| 国产精品欧美日韩一区二区| 在线日韩欧美视频| 亚洲欧美制服综合另类| 亚洲成人xxx| 色诱女教师一区二区三区| 亚洲色图第三页| 亚洲精品国产欧美| 久久这里有精品| 中文字幕欧美视频在线| 欧美成人sm免费视频| www国产精品视频| 国产日韩欧美成人| 成人免费看吃奶视频网站| 亚洲一区美女视频在线观看免费| 日韩欧美一区二区三区| 日韩免费高清在线观看| 亚洲一区二区在线| 国内精品久久久久伊人av| 狠狠做深爱婷婷久久综合一区| 成人久久久久爱| 久久香蕉国产线看观看网| 午夜精品久久久99热福利| 欧美国产日韩一区二区在线观看| 精品久久久久久久久久| 国产精品久久77777| 色综合久久精品亚洲国产| 欧美大片免费观看在线观看网站推荐| 国产一区二区三区在线| 国产精品久久精品| 尤物九九久久国产精品的特点| y97精品国产97久久久久久| 久久国产精品久久国产精品| 国产男女猛烈无遮挡91| 亚洲黄色av女优在线观看| 国产精品欧美一区二区| 久久精品99无色码中文字幕| 欧美特黄级在线| 欧美日韩国产综合新一区| 欧美精品aaa| 久久亚洲精品国产亚洲老地址| 97精品在线观看| 富二代精品短视频| 欧美激情一区二区三区成人| 国产精品精品久久久久久| 88国产精品欧美一区二区三区| 精品福利一区二区| 2024亚洲男人天堂| 亚洲高清在线观看| 欧美亚洲激情视频| 亚洲视频视频在线| 成人免费看黄网站| xx视频.9999.com| 国产精品丝袜一区二区三区| 91免费电影网站| 国产欧美一区二区三区四区| 欧美精品video| 一区二区三区在线播放欧美| 国产精品天天狠天天看| 国产成人精品视频在线观看| 精品香蕉在线观看视频一| 国产精品三级久久久久久电影| 精品magnet| 成人国产在线激情| 亚洲午夜精品久久久久久性色| 欧美中文字幕视频在线观看| 欧美日韩成人网| 尤物九九久久国产精品的特点| 九九精品在线观看| 俺去了亚洲欧美日韩| 日韩毛片中文字幕| 亚洲无亚洲人成网站77777| 日本成人在线视频网址| 亚洲国产欧美日韩精品| 国产一区二区黄| 亚洲第一精品福利| 久久男人的天堂| 成人午夜在线影院| 日韩亚洲精品视频| 欧美国产日韩视频| 国产精品久久久久久五月尺| 欧美精品videos另类日本| www.亚洲免费视频| 日韩欧美精品在线观看| 亚洲自拍偷拍网址| 亚洲欧洲日产国产网站| 色婷婷久久av| 欧美国产日本高清在线| 中文字幕日韩精品在线| 国产精自产拍久久久久久| 影音先锋欧美精品| 中文字幕无线精品亚洲乱码一区| 国产亚洲视频中文字幕视频| 97av在线播放| 91国偷自产一区二区三区的观看方式| 欧美日韩国产999| 亚洲一区亚洲二区亚洲三区| 国产91在线高潮白浆在线观看| 欧美成人网在线| 久久躁日日躁aaaaxxxx| 亚洲欧美日韩爽爽影院| 亚洲最大av网站| 国产精品视频免费在线观看| 91精品国产综合久久久久久久久| 欧美自拍视频在线| 国产精品久久久久久久久影视| 97精品国产97久久久久久免费| 亚洲综合一区二区不卡| 日本aⅴ大伊香蕉精品视频| 成人国产精品一区二区| 91精品国产91久久久久| 欧美日韩国产区| 亚洲精品98久久久久久中文字幕| 日韩高清中文字幕| 日韩精品免费在线视频观看| 91精品国产高清| 欧美性理论片在线观看片免费| 国产a∨精品一区二区三区不卡| 国产精品尤物福利片在线观看| 欧美xxxx14xxxxx性爽| 97精品免费视频| 亚洲高清av在线| 中文日韩在线视频| 疯狂做受xxxx欧美肥白少妇| 精品国产一区二区三区久久狼黑人| 一本色道久久88综合亚洲精品ⅰ| 欧美国产第二页| 日产日韩在线亚洲欧美| 亚洲精品久久久久久久久久久久| 欧美激情欧美狂野欧美精品| 国产成+人+综合+亚洲欧美丁香花| 国产精品69精品一区二区三区| 国产一区红桃视频| 亚洲人成电影在线播放| 97久久伊人激情网| 国产精品扒开腿爽爽爽视频| 国产精品久久久久久久久久久久| 欧美理论电影在线观看| 91av在线网站| 日韩极品精品视频免费观看| 在线视频免费一区二区| 欧美床上激情在线观看| 中文日韩电影网站| 一本色道久久综合狠狠躁篇怎么玩| 国产精品ⅴa在线观看h| 欧美性xxxx极品hd满灌| 日韩中文字幕免费| 日韩暖暖在线视频| 欧美国产日韩一区二区在线观看| 久久国产一区二区三区| 欧美性一区二区三区| 久久亚洲国产成人| 国产丝袜一区二区三区免费视频| 国产日韩欧美在线视频观看| 欧美精品一区三区| 日日噜噜噜夜夜爽亚洲精品| 久久男人的天堂| 亚洲精品视频中文字幕| 亚洲综合大片69999|