第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

C#中的內(nèi)聯(lián)函數(shù)?

C#中的內(nèi)聯(lián)函數(shù)?

C#
素胚勾勒不出你 2019-07-23 19:28:47
C#中的內(nèi)聯(lián)函數(shù)?你如何在C#中做“內(nèi)聯(lián)函數(shù)”?我認(rèn)為我不理解這個(gè)概念。他們喜歡匿名方法嗎?像lambda函數(shù)?注意:答案幾乎完全涉及內(nèi)聯(lián)函數(shù)的能力,即“用被調(diào)用者的主體替換函數(shù)調(diào)用站點(diǎn)的手動(dòng)或編譯器優(yōu)化”。如果您對(duì)匿名(也稱(chēng)為lambda)函數(shù)感興趣,請(qǐng)參閱@ jalf的答案或者每個(gè)人都在說(shuō)什么'Lambda'?。
查看完整描述

3 回答

?
慕田峪4524236

TA貢獻(xiàn)1875條經(jīng)驗(yàn) 獲得超5個(gè)贊

最后在.NET 4.5中,CLR允許使用值提示/建議1方法內(nèi)聯(lián)MethodImplOptions.AggressiveInlining。它也可以在Mono的后備箱中使用(今天提交)。


// The full attribute usage is in mscorlib.dll,

// so should not need to include extra references

using System.Runtime.CompilerServices; 


...


[MethodImpl(MethodImplOptions.AggressiveInlining)]

void MyMethod(...)

1。此前使用的是“force”。由于有一些downvotes,我會(huì)試著澄清這個(gè)詞。正如在評(píng)論和文檔中一樣,The method should be inlined if possible.特別是考慮到Mono(開(kāi)放),考慮內(nèi)聯(lián)或更一般的(如虛函數(shù)),存在一些單特定的技術(shù)限制。總的來(lái)說(shuō),是的,這是對(duì)編譯器的暗示,但我想這就是要求的。


查看完整回答
反對(duì) 回復(fù) 2019-07-23
?
函數(shù)式編程

TA貢獻(xiàn)1807條經(jīng)驗(yàn) 獲得超9個(gè)贊

內(nèi)聯(lián)方法只是一種編譯器優(yōu)化,其中函數(shù)的代碼被卷入調(diào)用者。

在C#中沒(méi)有任何機(jī)制可以做到這一點(diǎn),并且它們?cè)谥С炙鼈兊恼Z(yǔ)言中被謹(jǐn)慎使用 - 如果你不知道為什么它們應(yīng)該被用在某個(gè)地方,它們就不應(yīng)該被使用。

編輯:為了澄清,有兩個(gè)主要原因需要謹(jǐn)慎使用:

  1. 在沒(méi)有必要的情況下,通過(guò)內(nèi)聯(lián)使用大量二進(jìn)制文件很容易

  2. 從性能的角度來(lái)看,編譯器往往比你應(yīng)該知道更好

最好不要管它,讓編譯器完成它的工作,然后分析并確定內(nèi)聯(lián)是否是最適合你的解決方案。當(dāng)然,有些事情是有意義的內(nèi)聯(lián)(特別是數(shù)學(xué)運(yùn)算符),但讓編譯器處理它通常是最好的做法。


查看完整回答
反對(duì) 回復(fù) 2019-07-23
  • 3 回答
  • 0 關(guān)注
  • 1684 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)