理解c 中委託

2021-07-10 21:00:30 字數 1080 閱讀 9792

1.

我們對委託做乙個總結:

委託是乙個類,它定義了方法的型別,使得可以將方法當作另乙個方法的引數來進行傳遞,這種將方法動態地賦給引數的做法,可以避免在程式中大量使用if-else(switch)語句,同時使得程式具有更好的可擴充套件性。

//正確理解委託的列子

usingsystem;

usingsystem.collections.generic;

usingsystem.text;

namespacedelegate

privatestaticvoidchinesegreeting(stringname)

//注意此方法,它接受乙個greetingdelegate型別的引數,該引數是返回值為空,引數為string型別的方法

privatestaticvoidgreetpeople(stringname, greetingdelegate makegreeting)

staticvoidmain(stringargs)

}

}

詳見:

C 委託 怎樣理解C 中「委託」的含義和用途

下面是的回答 我是這樣理解的 委託是對方法的引用,相當於方法的別名,也就是說委託與方法具有相同的行為。委託變數說白了就是接受方法名作為引數的變數,當我們使用這個委託變數的時候就相當於呼叫了這個方法。我也感覺 委託 就是方法別名,或者呼叫別人的方法時,不用原來的方法名,可以自己起乙個有意義的名字 聯想...

C 中委託 delegate 和多播委託的理解

委託是定址方法的.net版本。在c 高階程式設計 第七版 中這是對委託的第一句描述。什麼是定址方法?簡單理解為我們通過委託傳遞乙個方法給另乙個方法。什麼時候需要傳遞方法?在微軟的官方文件和c 高階程式設計 第七版 這本書都提到乙個例子 在物件的排序演算法中,需要對物件進行比較,而不同物件比較的方法不...

C 中委託的最簡單理解方式

近這段時間比較空閒,回顧了一下基礎的東西,溫故而知新嘛!裡就先談一下物件導向最基礎而且最重要的型別之一 委託 下面用乙個比較容易理解的例子來方便理解 唉,羅嗦了這麼多,還是看一下例子比較實際。下面定義了兩個類 乙個是駕駛員類,乙個是駕駛方法類。在driveclass類中我們可以定義所有動物為駕駛員 ...