C#中匿名方法與委托的關(guān)系介紹
當(dāng)對(duì)2個(gè)數(shù)實(shí)現(xiàn)加減乘除,其中的一個(gè)解決方案是通過(guò)委托來(lái)實(shí)現(xiàn)。如下:
class Program { private delegate int CaculateDel(int num1, int num2); static void Main(string[] args) { CaculateDel caculateDel = Add; Console.WriteLine(caculateDel.Invoke(1,2).ToString()); Console.ReadKey(); } static int Add(int num1, int num2) { return num1 + num2; } }
以上,把Add方法賦值給了CaculateDel類(lèi)型的委托變量。
如果用匿名方法來(lái)實(shí)現(xiàn),就是:
class Program { private delegate int CaculateDel(int num1, int num2); static void Main(string[] args) { CaculateDel caculateDel = delegate(int num1, int num2) { return num1 + num2; }; Console.WriteLine(caculateDel.Invoke(1,2).ToString()); Console.ReadKey(); } }
可見(jiàn),匿名方法就是委托,使用匿名方法有了更好的靈活性,不需要事先把方法寫(xiě)"死"。
如果我們使用System.Diagnostics的Stopwatch的實(shí)例方法Reset、Start、Stop等來(lái)重置、開(kāi)始、結(jié)束Stopwatch,用Stopwatch的ElapsedTickes屬性來(lái)顯示時(shí)間,我們可以發(fā)現(xiàn)匿名方法的效率比較高。
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
相關(guān)文章
C#中Forms.Timer、Timers.Timer、Threading.Timer的用法分析
這篇文章主要介紹了C#中Forms.Timer、Timers.Timer、Threading.Timer的用法分析,以實(shí)例形式較為詳細(xì)的講述了.NET Framework里面提供的三種Timer具體用法,需要的朋友可以參考下2014-10-10C#獲取兩個(gè)時(shí)間的時(shí)間差并去除周末(取工作日)的方法
這篇文章主要介紹了C#獲取兩個(gè)時(shí)間的時(shí)間差并去除周末(取工作日)的方法,可有效的實(shí)現(xiàn)獲取工作日的功能,涉及C#時(shí)間操作的相關(guān)技巧,需要的朋友可以參考下2015-05-05基于Unity3D實(shí)現(xiàn)仿真時(shí)鐘詳解
這篇文章主要為大家詳細(xì)介紹了如何利用Unity3D模擬實(shí)現(xiàn)一個(gè)簡(jiǎn)單是時(shí)鐘效果,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-01-01使用快捷鍵在Unity中快速鎖定和解鎖Inspector右上角的鎖功能
這篇文章主要為大家介紹了使用快捷鍵在Unity中快速鎖定和解鎖Inspector右上角的鎖功能詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08