C++ - 內(nèi)聯(lián)函數(shù)

  • 函數(shù)調(diào)用是有時間開銷的。如果函數(shù)本身只有幾條語句,執(zhí)行非常快,而且函數(shù)被反復(fù)執(zhí)行很多次,相比之下調(diào)用函數(shù)所產(chǎn)生的這個開銷就會顯得比較大。

  • 為了減少函數(shù)調(diào)用的開銷,引入了內(nèi)聯(lián)函數(shù)機(jī)制。編譯器處理對內(nèi)聯(lián)函數(shù)的調(diào)用語句時,是將整個函數(shù)的代碼插入到調(diào)用語句處,而不會產(chǎn)生調(diào)用函數(shù)的語句。

  • 內(nèi)聯(lián)函數(shù)

#warning
//調(diào)用內(nèi)聯(lián)函數(shù)的弊端:編譯器會將 max 的函數(shù)體都塞在調(diào)用函數(shù)的地方,函數(shù)體中的指令數(shù)量可能比調(diào)用函數(shù)的語句多,那么可執(zhí)行語句可能會增大。
inline int Max(int a,int b)
{
    if(a>b) return a;
    return b;
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容