頭文件里可以定義內(nèi)聯(lián)函數(shù) 內(nèi)聯(lián)函數(shù)帶來的好處有有哪些?
內(nèi)聯(lián)函數(shù)帶來的好處有有哪些?與普通函數(shù)相比,內(nèi)聯(lián)函數(shù)的優(yōu)點(diǎn)如下:消除了函數(shù)調(diào)用的時(shí)間開銷。從源代碼層面看,內(nèi)聯(lián)函數(shù)具有函數(shù)的結(jié)構(gòu),但編譯后不具有函數(shù)的性質(zhì)。因?yàn)楸仨氃谡{(diào)用函數(shù)之前保存寄存器,在函數(shù)返回
內(nèi)聯(lián)函數(shù)帶來的好處有有哪些?
與普通函數(shù)相比,內(nèi)聯(lián)函數(shù)的優(yōu)點(diǎn)如下:
消除了函數(shù)調(diào)用的時(shí)間開銷。從源代碼層面看,內(nèi)聯(lián)函數(shù)具有函數(shù)的結(jié)構(gòu),但編譯后不具有函數(shù)的性質(zhì)。因?yàn)楸仨氃谡{(diào)用函數(shù)之前保存寄存器,在函數(shù)返回時(shí)還原寄存器,并且復(fù)制實(shí)際參數(shù),所以程序也必須在新位置執(zhí)行。與宏定義相比,內(nèi)聯(lián)函數(shù)的優(yōu)點(diǎn)如下:
1。內(nèi)聯(lián)函數(shù)可以在運(yùn)行時(shí)調(diào)試,但宏定義不能。編譯器會(huì)對(duì)內(nèi)聯(lián)函數(shù)的參數(shù)類型進(jìn)行安全檢查或自動(dòng)類型轉(zhuǎn)換(與普通函數(shù)相同),但宏定義不會(huì)。內(nèi)聯(lián)函數(shù)可以訪問類的成員變量,但宏定義不能。聲明成員函數(shù)在類號(hào)中同時(shí)定義,自動(dòng)轉(zhuǎn)換為內(nèi)聯(lián)函數(shù)