黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

匿名函數(shù)

系統(tǒng) 2580 0

如其他地方所述,委托是一種包裝方法調(diào)用的類型。就像類型一樣,可以在方法之間傳遞委托實(shí)例,并且可以像方法一樣調(diào)用委托實(shí)例。匿名函數(shù)是一個(gè)“內(nèi)聯(lián)”語句或表達(dá)式,可在需要委托類型的任何地方使用。可以使用匿名函數(shù)來初始化命名委托,或傳遞命名委托(而不是命名委托類型)作為方法參數(shù)。

共有兩種匿名函數(shù),以下主題中分別討論了這些函數(shù):

C# 中委托的發(fā)展

在 C# 1.0 中,您通過使用在代碼中其他位置定義的方法顯式初始化委托來創(chuàng)建委托的實(shí)例。C# 2.0 引入了匿名方法的概念,作為一種編寫可在委托調(diào)用中執(zhí)行的未命名內(nèi)聯(lián)語句塊的方式。C# 3.0 引入了 Lambda 表達(dá)式,這種表達(dá)式與匿名方法的概念類似,但更具表現(xiàn)力并且更簡(jiǎn)練。這兩個(gè)功能統(tǒng)稱為“匿名函數(shù)”。通常,針對(duì) .NET Framework 版本 3.5 及更高版本的應(yīng)用程序應(yīng)使用 Lambda 表達(dá)式。

下面的示例演示了從 C# 1.0 到 C# 3.0 委托創(chuàng)建過程的發(fā)展:

                
                  class
                
                 Test
{
    
                
                  delegate
                
                
                  void
                
                 TestDelegate(
                
                  string
                
                 s);
    
                
                  static
                
                
                  void
                
                 M(
                
                  string
                
                 s)
    {
        Console.WriteLine(s);
    }

    
                
                  static
                
                
                  void
                
                 Main(
                
                  string
                
                [] args)
    {
        
                
                  // Original delegate syntax required 
                
                
                  // initialization with a named method.
                
                
        TestDelegate testdelA = 
                
                  new
                
                 TestDelegate(M);

        
                
                  // C# 2.0: A delegate can be initialized with
                
                
                  // inline code, called an "anonymous method." This
                
                
                  // method takes a string as an input parameter.
                
                
        TestDelegate testDelB = 
                
                  delegate
                
                (
                
                  string
                
                 s) { Console.WriteLine(s); };

        
                
                  // C# 3.0. A delegate can be initialized with
                
                
                  // a lambda expression. The lambda also takes a string
                
                
                  // as an input parameter (x). The type of x is inferred by the compiler.
                
                
        TestDelegate testDelC = (x) => { Console.WriteLine(x); };

        
                
                  // Invoke the delegates.
                
                
        testdelA(
                
                  "Hello. My name is M and I write lines."
                
                );
        testDelB(
                
                  "That's nothing. I'm anonymous and "
                
                );
        testDelC(
                
                  "I'm a famous author."
                
                );

        
                
                  // Keep console window open in debug mode.
                
                
        Console.WriteLine(
                
                  "Press any key to exit."
                
                );
        Console.ReadKey();
    } 
}

                
                  /* Output:
    Hello. My name is M and I write lines.
    That's nothing. I'm anonymous and
    I'm a famous author.
    Press any key to exit.
 */
                
              

匿名函數(shù)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論