淺談VC++中的內(nèi)聯(lián)論文

時間:2023-05-04 04:07:48 論文范文 我要投稿
  • 相關(guān)推薦

淺談VC++中的內(nèi)聯(lián)論文

  內(nèi)聯(lián)的語法

淺談VC++中的內(nèi)聯(lián)論文

  在類聲明中定義方法;

  內(nèi)聯(lián)方法放在類聲明之外,但必須出現(xiàn)在頭文件中,且內(nèi)聯(lián)方法聲明中使用inline標識;

  注:inline只是對編譯器的建議,是否內(nèi)聯(lián)的決定權(quán)在編譯器;

  內(nèi)聯(lián)節(jié)省的開銷

  函數(shù)調(diào)用開銷

  調(diào)用間優(yōu)化 優(yōu)秀的編譯器可是內(nèi)聯(lián)方法的邊界難以區(qū)分(將代碼內(nèi)聯(lián)后,對代碼進行重新排列)

  內(nèi)聯(lián)帶來的問題

  代碼膨脹(空間開銷)

  由于代碼膨脹帶來的頁面緩存命中率下降

  編譯時間增加

  修改文件后相關(guān)文件都需要重新編譯;

  由于函數(shù)邊界模糊,該內(nèi)聯(lián)函數(shù)遇到問題后不好排查;

  內(nèi)聯(lián)函數(shù)的建議

  優(yōu)化時,只針對高頻代碼內(nèi)聯(lián);

  對于調(diào)用頻率高的(80%以上場景都會走到的路徑):

  函數(shù)規(guī)模<5行:總是內(nèi)聯(lián);

  5-20行,將高頻率的調(diào)用點選擇性內(nèi)聯(lián);

  超過20行,重寫方法,體現(xiàn)出快速路徑并將其內(nèi)聯(lián);

  內(nèi)聯(lián)的技巧

  將內(nèi)聯(lián)工作放到開發(fā)周期后期

  使用條件內(nèi)聯(lián),通過宏和編譯選項的技巧控制在開發(fā)初期不內(nèi)聯(lián),而到開發(fā)后期再加上自定義內(nèi)聯(lián)選項進行內(nèi)聯(lián);

  SPARC體系結(jié)構(gòu)中的內(nèi)聯(lián)

  SPARC中有充足的寄存器,在限定的調(diào)用深度范圍內(nèi)幾乎沒有調(diào)用返回的性能損失(無須在調(diào)用時存儲就的寄存器內(nèi)容),所有,這種體系結(jié)構(gòu)的內(nèi)聯(lián)效果甚微,一般不用考慮內(nèi)聯(lián);

  以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。

【淺談VC++中的內(nèi)聯(lián)論文】相關(guān)文章:

淺談教學中的體會論文04-27

淺談城市中的垂直綠化論文04-30

淺談GPS在工程測量中的應(yīng)用論文12-15

淺談感恩教育中的三要論文05-02

淺談教學在體育教學中的運用的論文05-02

淺談管井降水在基坑施工中的應(yīng)用論文04-30

淺談?wù)Z文課堂中的小論文05-02

淺談?wù)Z文教學中的德育論文05-02

淺談職業(yè)學校中對差生的教學論文05-02