1.什麼是委託
委託(delegate)是乙個類,其定義了方法的型別,以實現將方法作為引數傳入另乙個方法。即委託可看作一種自定義的方法型別,可模擬自定義的資料型別來理解。使用者如果要使用委託,和c#中引用類的方法一樣,需要乙個例項化的載體。那這個載體就是事件(event)。
2.什麼是事件
事件是建立在已經定義【委託型別】的基礎上,可看作乙個進行了封裝的委託型別的變數。3.示例:定義委託(delegate)和事件(event)
4.定義方法//定義委託型別:展示了方法基本結構public void run2()public delegate void delegateeventhandler(string _param);
// 基於上面的委託定義事件:可註冊多個實際方法,並根據註冊順序執行
public event delegateeventhandler delegateevent;
public void run1(string _param)
}
}
public void fun1(string _param)5.示例:註冊方法public void fun2(string _param)
public static void fun3(string _param)
delegateclass del = new delegateclass();6.示例:執行方法funclass fun = new funclass();
del.delegateeventhandler += fun.fun1;
del.delegateeventhandler += (new funclass()).fun2;
del.delegateeventhandler += funclass.fun3;
del.run("this is a param");
C 委託及事件
有許多人問的,net中的委託以及事件處理。我拿簡單的例子說明一下,是現實中的例子 比如說乙個公司 場景 你是老闆,手下有兩個員工,小張和小王。你命令小王,如果小張玩遊戲,則小王扣去小張500元錢。這就是現實中的委託。實際上,在寫程式中,程式設計師就是老闆,小張和小王就是兩個物件。小張玩遊戲是乙個方法...
C 委託及事件
有許多人問的,net中的委託以及事件處理。我拿簡單的例子說明一下,是現實中的例子 比如說乙個公司 場景 你是老闆,手下有兩個員工,小張和小王。你命令小王,如果小張玩遊戲,則小王扣去小張500元錢。這就是現實中的委託。實際上,在寫程式中,程式設計師就是老闆,小張和小王就是兩個物件。小張玩遊戲是乙個方法...
C 委託及事件委託的初步理解
委託的宣告 public delegate void mydelegate string str 委託是一種特殊的型別 class 用途是來實現對一種方法的封裝。在某種事件發生時,自動呼叫該方法。好處顯然易見,它使使用者可以自定義自己的方法實現,通過封裝,clr會在相應事件激發時呼叫你定義的方法,實...