程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C#編程利器之四:委托與事件(Delegate and event) (上)(1)

C#編程利器之四:委托與事件(Delegate and event) (上)(1)

編輯:關於C語言

本文試圖在.Net Framework環境下,使用C#語言來描述委托、事件的概貌。希望本文能有助於大家理 解委托、事件的概念,理解委托、事件的用途,理解它的C#實現方法,理解委托與事件為我們帶來的好處 。C#是一種新的語言,希望大家能通過本文清楚地看到這些,從而可以對委托、事件等技術進行更深入的 理解和探索。

一. 委托

委托的本質

--在C#中,委托是一個特殊的類;

--在某種程度上,相當於C++的函數指針;

--在某種程度上,相當於接口(Interface);

委托的定義

--關鍵字:delegate

--public delegate void MyDelegate(string message);

注:在這裡我們先了解一個概念,什麼是函數簽名?(在這裡我不做過多解釋,大家知道這個概念就行) 。

使用委托

我們先來看看一個小的委托示例:

平時,如果說我們要設計一個做簡單加減運算的方法,通常是怎麼做的呢?看看下面代碼:

1class Program
2  {
3    /**//// <summary>
4    /// 加法運算
5    /// </summary>
6    /// <param name="x">x</param>
7    /// <param name="y">y</param>
8    /// <returns></returns>
9    private static int Add(int x, int y)
10    {
11      int result = x + y;
12      Console.WriteLine("x + y = {0}",result);
13      return result;
14    }
15
16    /**//// <summary>
17    /// 減法運算
18    /// </summary>
19    /// <param name="x">x</param>
20    /// <param name="y">y</param>
21    /// <returns></returns>
22    private static int Sub(int x, int y)
23    {
24      int result = x - y;
25      Console.WriteLine("x - y = {0}", result);
26      return result;
27    }
28
29    static void Main(string[] args)
30    {
31      Add(8, 8);
32      Sub(8, 1);
33      Console.Read();
34    }
35  }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved