C 委託使用

2021-09-23 13:31:17 字數 1876 閱讀 8329

c#委託使用案例

假定有兩個物件a和b,在a中例項化了物件b,那麼a可以訪問b中的方法,反過來b不能直接訪問a中的方法,所以使用委託。

委託的使用步驟:條件(在a物件中例項化了b)

(1)、在b中宣告乙個委託原型

(2)、在a中根據委託原型編寫所需要的委託方法

(3)、在b中利用宣告的委託原型宣告乙個委託變數

(4)、在a中通過委託變數和委託方法關聯

根據物件導向程式設計原則抽取的類:(1)選秀平台類;(2)嘉賓類;(3)投票器類;(4)投票結果展示類;

: ![alt](using system;

using system.collections.generic;

using system.linq;

using system.text;

namespace vote.models

//嘉賓姓名

public int guestid //嘉賓號碼

public int votecounter = 0;//所得票數}}

using system;

using system.collections.generic;

using system.linq;

using system.text;

namespace vote.models

,[2]=new guest() ,

[3]=new guest() };}

}}using system.collections.generic;

using system.componentmodel;

using system.data;

using system.drawing;

using system.linq;

using system.text;

using system.windows.forms;

namespace vote

//產生指定個數的投票器

private void btnstart_click(object sender, eventargs e)

}//委託使用(3)根據委託原型在需要 b物件呼叫的方法

public void sendmsg(int num)

//結束投票

//委託使用(5)在a中呼叫b中的方法

private void btn_click(object sender, eventargs e)

}//委託使用(1)定義乙個委託原型(誰使用誰宣告)

public delegate void sendmsgdelegate(int num);//引數為嘉賓號}

C 使用委託

文章整理自msdn 委託是一種引用方法的型別。一旦為委託分配了方法,委託將與該方法具有完全相同的行為。委託方法的呼叫可以像其他任何方法一樣,具有引數和返回值,如下面的示例所示 與委託的簽名 由返回型別和引數組成 匹配的任何可訪問類或結構中的任何方法都可以分配給該委託。方法可以是靜態方法,也可以是例項...

C 委託使用

委託是乙個類,它定義了方法的型別,說白了就是將乙個方法當作另乙個方法的引數來進行傳遞,這種將方法動態地賦給引數的做法。可以避免在程式中大量使用 if else switch 語句,同時使得程式具有更好的可擴充套件性。它封裝了委託型別的變數,使得 在類的內部,不管你宣告它是public還是protec...

c 中使用委託

對於委託的定義,我的理解就是封裝一型別的方法,然後根據傳遞進的引數,由系統來進行選擇呼叫。申明 delegate void voidoperation uint x 這申明了乙個委託,與這個委託匹配的方法格式為 不返回任何結果,引數。delegate int intoperation int x,i...