简单的Delegate(委托)例子
生活随笔
收集整理的這篇文章主要介紹了
简单的Delegate(委托)例子
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今天學習一下好久都不愿意碰的Delegate,雖然不是很明白,還是寫了一個小例子(參考園子里的朋友們的),希望加深一下印象.
朋友們說它類似于C++的函數指針,指向一個函數,運行的時候可以調用這個函數.
步驟:
?? 1. 聲明一個delegate對象。
?? 2. 實現和delegate具有相同參數和返回值的函數實現(可以是靜態和非靜態的)。
?? 3. 產生一個delegate對象的時候,把你剛剛實現的函數作為參數傳給他的構造函數。
代碼如下:
Default.aspx.cs中:
public partial class _Default : System.Web.UI.Page
{
//第一步,聲明一個delegate對象
??? public delegate void Mydelegate(string mydelegate);
??? protected void Page_Load(object sender, EventArgs e)
??? {
??????? //第三步 產生一個delegate對象的時候,把你剛剛實現的函數(方法)作為參數傳給他的構造函數。
??????? Mydelegate hello = new Mydelegate(Hello);
??????? hello("hello");
??????? Mydelegate statichello = new Mydelegate(staticHello);
??????? statichello("beijing");
??? }
//第二步 實現和delegate具有相同參數和返回值的函數實現(非靜態的)
//這里的參數是mydelegate,返回值是void
??
??? public void Hello(string mydelegate)
??? {
??????? Response.Write(mydelegate);
??? }
//第二步 實現和delegate具有相同參數和返回值的函數實現(靜態的)
//這里的參數是mydelegate,返回值是void
??? public static void staticHello(string mydelegate)
??? {
??????? HttpContext.Current.Response.Write(mydelegate);
??? }
}
輸出結果:hellobeijing
參考內容:http://www.cnblogs.com/cuihongyu3503319/archive/2007/04/29/732376.html
朋友們說它類似于C++的函數指針,指向一個函數,運行的時候可以調用這個函數.
步驟:
?? 1. 聲明一個delegate對象。
?? 2. 實現和delegate具有相同參數和返回值的函數實現(可以是靜態和非靜態的)。
?? 3. 產生一個delegate對象的時候,把你剛剛實現的函數作為參數傳給他的構造函數。
代碼如下:
Default.aspx.cs中:
public partial class _Default : System.Web.UI.Page
{
//第一步,聲明一個delegate對象
??? public delegate void Mydelegate(string mydelegate);
??? protected void Page_Load(object sender, EventArgs e)
??? {
??????? //第三步 產生一個delegate對象的時候,把你剛剛實現的函數(方法)作為參數傳給他的構造函數。
??????? Mydelegate hello = new Mydelegate(Hello);
??????? hello("hello");
??????? Mydelegate statichello = new Mydelegate(staticHello);
??????? statichello("beijing");
??? }
//第二步 實現和delegate具有相同參數和返回值的函數實現(非靜態的)
//這里的參數是mydelegate,返回值是void
??
??? public void Hello(string mydelegate)
??? {
??????? Response.Write(mydelegate);
??? }
//第二步 實現和delegate具有相同參數和返回值的函數實現(靜態的)
//這里的參數是mydelegate,返回值是void
??? public static void staticHello(string mydelegate)
??? {
??????? HttpContext.Current.Response.Write(mydelegate);
??? }
}
輸出結果:hellobeijing
參考內容:http://www.cnblogs.com/cuihongyu3503319/archive/2007/04/29/732376.html
轉載于:https://www.cnblogs.com/fanwenxuan/archive/2007/09/28/908675.html
總結
以上是生活随笔為你收集整理的简单的Delegate(委托)例子的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 海信65E3D–J和海信VIDAA 65
- 下一篇: 【第二届】Erlang Fans交流会(