C#委托是什么
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
法庭上律師為當事人辯護,他真正執(zhí)行的是當事人的陳詞,律師就相當于一個委托對象,而當事人則委托律師對象為自己辯護。 c#中的委托概念也就好比律師對象,它是一個類(“委托是類類型”這個事實將在“委托本質”部分進行詳細介紹),因為只有類才有對象的概念,這也體現(xiàn)了c#作為一門面向對象語言的特性。 c#中的委托可以理解為函數(shù)的一個包裝,它使得c#中的函數(shù)可以作為參數(shù)來被傳遞,這在作用上相當于c++中的函數(shù)指針。c++用函數(shù)指針獲取函數(shù)的入口地址,然后通過這個指針來實現(xiàn)對函數(shù)的操作。 委托的定義和方法的定義類似,只是在定義的前面多了一個delegate關鍵字。如下定義:
委托能包裝的方法是有一定限制的,例如能被前面的委托類型MyDelegate包裝的方法需要滿足以下條件: 1.方法的返回類型必須為void; 2.方法必須有兩個參數(shù),并且第一個參數(shù)應為int類型,第二個參數(shù)為string類型。 總結:可以被委托包裝的方法必須滿足以下規(guī)則: 1.方法的簽名必須與委托一致,方法簽名包括參數(shù)的個數(shù)、類型和順序; 2.方法的返回類型要和委托一致,注意,方法的返回類型不屬于方法簽名的一部分。 該文章在 2021/1/29 8:57:26 編輯過 |
關鍵字查詢
相關文章
正在查詢... |