国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

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

2019-11-14 09:36:08
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

常規(guī)函數(shù)與內(nèi)聯(lián)函數(shù)的區(qū)別不在于編寫方式,而在于編譯器如何將他們組合到程序中。常規(guī)函數(shù)調(diào)用時(shí),程序?qū)⒃诤瘮?shù)調(diào)用后立即存儲(chǔ)該指令的內(nèi)存地址,并將函數(shù)參數(shù)賦值到堆棧,跳到標(biāo)記函數(shù)起點(diǎn)的內(nèi)存單元,執(zhí)行函數(shù)代碼,然后跳回到地址被保存的指令處。來(lái)回跳躍并記錄跳躍位置意味著常規(guī)函數(shù)需要一定的開銷。

內(nèi)聯(lián)函數(shù)則編譯器將使用相應(yīng)的函數(shù)代碼替換函數(shù)調(diào)用(即直接展開),無(wú)需來(lái)回跳轉(zhuǎn)。因此運(yùn)行速度比常規(guī)函數(shù)快,但會(huì)占用較多內(nèi)存。但如果執(zhí)行函數(shù)代碼比處理函數(shù)調(diào)用機(jī)制的時(shí)間長(zhǎng),則節(jié)省的時(shí)間只占很小一部分。故若定義占多行,則不太合適。相反,如果代碼執(zhí)行時(shí)間很短,或者經(jīng)常被調(diào)用,則很有意義。

措施是在函數(shù)聲明和函數(shù)定義前加上關(guān)鍵字inline。通常是省略原型,將整個(gè)定義放在本應(yīng)提供聲明的地方(例如.h文件中)。格式如下:

inline double square ( double x) { return x * x;}

內(nèi)聯(lián)函數(shù)的原始實(shí)現(xiàn)實(shí)際上是#define提供宏。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 武夷山市| 大名县| 灵宝市| 开平市| 九龙县| 伊春市| 嫩江县| 濉溪县| 修武县| 唐山市| 聊城市| 广昌县| 大埔县| 安阳县| 龙游县| 饶阳县| 勐海县| 胶南市| 汽车| 龙门县| 韩城市| 镇巴县| 定州市| 三都| 肇庆市| 西平县| 屏山县| 武清区| 嘉善县| 新安县| 江口县| 桐梓县| 宁远县| 九龙坡区| 永昌县| 高州市| 石河子市| 华安县| 茶陵县| 城步| 安新县|