|
前言
曾幾何時(shí)能看到微軟產(chǎn)品的源碼簡(jiǎn)直是天方夜譚,不過(guò)現(xiàn)在這卻成了現(xiàn)實(shí),微軟終于對(duì)外開放了它的產(chǎn)品的源代碼.拋去開源運(yùn)動(dòng)與微軟之間的世代情仇,拋去微軟這一做法的初衷,這總歸是件好事,能夠讓我們撥開云霧,一窺優(yōu)秀產(chǎn)品的秘密.
前兩天看到有位仁兄在隨筆中的留言,說(shuō)他以為".NET中的設(shè)計(jì)模式"是在講.NET Framework與設(shè)計(jì)模式的關(guān)系,其實(shí)不是,不過(guò)這也讓我想起來(lái)自己確實(shí)研究過(guò).NET Framework的源碼,于是就找打算找時(shí)間把自己的心得體會(huì)拿出來(lái)和大家一起分享.
今天就先從最容易讓人困惑的委托(delegate)開始,讓我們步入.NET Framework源碼世界,共同學(xué)習(xí)優(yōu)秀的程序設(shè)計(jì).
先看委托的定義:用于聲明一個(gè)引用類型,該引用類型可用于封裝命名方法或匿名方法。委托類似于 C++ 中的函數(shù)指針;但是,委托是類型安全和可靠的。
相信看到這段話之后,很多人,包括我自己就開始一起探索委托與函數(shù)指針,于是各種網(wǎng)文就出現(xiàn)了.但委托到底是什么呢?我們先看一段很簡(jiǎn)單的代碼:
public delegate void OnAction(int flag);
NET技術(shù):.NET Framework源碼研究系列之---Delegate,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。