欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

深入委托與多播委托的詳解

 更新時間:2013年06月09日 10:29:05   作者:  
本篇文章是對委托與多播委托進行了詳細的分析介紹,需要的朋友參考下
復制代碼 代碼如下:

using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication1
{
    class 簡單的委托實例
    {
        public static double Area(double Val)
        {
            return Val * 2;
        }
        public static double Scare(double Val)
        {
            return Val * Val;
        }
    }
    class Test
    {
        public delegate double delegateTest(double dd);
        static void Main()
        {
            //實例化了個委托數組,(一旦定義了委托類,就可以實例化它的實例)
            delegateTest[] Operations =
                {
                    //說明了委托的一種方式,把方法組合到數組
                  new delegateTest(簡單的委托實例.Area),
                  new delegateTest(簡單的委托實例.Scare)
                };
            for (int i = 0; i < Operations.Length; i++)
            {
                Console.WriteLine("Using Operations[{0}]", i);
                Test MyTest = new Test();
                //把委托傳遞給ProcessDelagate()這個方法,Operations[0]可以理解成delegateTest Operations =new delegateTest(簡單的委托實例.Area);調用ProcessDelagate這個方法的時候Operations代理的方法是簡單的委托實例.Area
                MyTest.ProcessDelagate(Operations[i], 12.0);
                MyTest.ProcessDelagate(Operations[i], 2.0);
                Console.WriteLine();
            }
        }
        //把委托作為一個參數傳遞到ProcessDelagate()第一個參數中
        void ProcessDelagate(delegateTest Action, double d)
        {
            double Result = Action(d);
            Console.WriteLine("提供的值是{0},結果是{1}", d, Result);
        }
    }
}

復制代碼 代碼如下:

using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication1
{
    //如果要多次調用這個方法,那么就要多次調用這個委托,委托包含多個方法,這個種委托就是多播委托!
    class 多播委托
    {
        //用的是void沒有返回值
        public delegate void DelageteTest(double val);
        static void Main()
        {
            //多播委托中添加2個方法
            DelageteTest MyTest = new DelageteTest(Test.Area);
            MyTest += new DelageteTest(Test.Scare);
            //下面的代碼跟上面的3行代碼是等價的
            //DelageteTest MyTest;
            //DelageteTest Test1 = new DelageteTest(Test.Area);
            //DelageteTest Test2 = new DelageteTest(Test.Scare);
            //MyTest = Test1 + Test2;
            多播委托 多 = new 多播委托();
            多.OPreation(MyTest, 2.0);
            多.OPreation(MyTest, 12.0);
        }
        void OPreation(DelageteTest Action, double d)
        {
            Action(d);
        }
    }
    class Test
    {
        public static void Area(double Val)
        {
            Console.WriteLine(Val * 2);
        }
        public static void Scare(double Val)
        {
            Console.WriteLine(Val * Val);
        }
    }
}

相關文章

  • C#生成隨機數實例

    C#生成隨機數實例

    這篇文章主要介紹了C#生成隨機數的方法,實例分析了隨機數的生成原理與使用技巧,需要的朋友可以參考下
    2015-01-01
  • C# 操作XML文檔 使用XmlDocument類方法

    C# 操作XML文檔 使用XmlDocument類方法

    對于很大的XML文檔,可以使用XmlReader類來讀取。因為XmlReader使用Steam(流)來讀取文件,所以不會對內存造成太大的消耗。下面就來看一下如何使用XmlDocument類,需要的朋友可以參考下
    2012-11-11
  • C#實現通過winmm.dll控制聲音播放的方法

    C#實現通過winmm.dll控制聲音播放的方法

    這篇文章主要介紹了C#實現通過winmm.dll控制聲音播放的方法,很實用的功能,需要的朋友可以參考下
    2014-08-08
  • C#文件非占用讀取與幫助類FileHelper

    C#文件非占用讀取與幫助類FileHelper

    這篇文章介紹了C#文件非占用讀取與幫助類FileHelper,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04
  • 說說C#的async和await的具體用法

    說說C#的async和await的具體用法

    本篇文章主要介紹了說說C#的async和await的具體用法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • C#調用C++動態(tài)庫接口函數和回調函數方法

    C#調用C++動態(tài)庫接口函數和回調函數方法

    這篇文章主要介紹了C#調用C++動態(tài)庫接口函數和回調函數方法,通過C++端編寫接口展開內容,文章介紹詳細具有一定的參考價值,需要的小伙伴可以參考一下
    2022-03-03
  • C#調用WinAPI部分命令的方法實現

    C#調用WinAPI部分命令的方法實現

    本文主要介紹了C#調用WinAPI部分命令的方法實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-01-01
  • C# httpwebrequest訪問HTTPS錯誤處理方法

    C# httpwebrequest訪問HTTPS錯誤處理方法

    下面小編就為大家?guī)硪黄狢# httpwebrequest訪問HTTPS錯誤處理方法。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • c#創(chuàng)建圓形類Circle、矩形類實現代碼

    c#創(chuàng)建圓形類Circle、矩形類實現代碼

    這篇文章主要介紹了c#創(chuàng)建圓形類Circle實現代碼,其中包括set,get方法,需要的朋友可以參考下
    2020-11-11
  • C#算法之大牛生小牛的問題高效解決方法

    C#算法之大牛生小牛的問題高效解決方法

    本文主要介紹兩種方法處理大牛生小牛的問題,第二種效率更高,希望能給大家一個參考。
    2016-06-06

最新評論