inline內(nèi)聯(lián)函數(shù) 什么是內(nèi)聯(lián)函數(shù)啊~和普通的成員函數(shù)有什么區(qū)別嗎?
什么是內(nèi)聯(lián)函數(shù)啊~和普通的成員函數(shù)有什么區(qū)別嗎??jī)?nèi)聯(lián)函數(shù)的定義:將函數(shù)定義為內(nèi)聯(lián)函數(shù)就是在程序的每個(gè)調(diào)用點(diǎn)將其“內(nèi)聯(lián)”展開(kāi)。在return函數(shù)之前添加關(guān)鍵字。在類聲明中定義的成員函數(shù)自動(dòng)成為內(nèi)聯(lián)函數(shù)。
什么是內(nèi)聯(lián)函數(shù)啊~和普通的成員函數(shù)有什么區(qū)別嗎?
內(nèi)聯(lián)函數(shù)的定義:將函數(shù)定義為內(nèi)聯(lián)函數(shù)就是在程序的每個(gè)調(diào)用點(diǎn)將其“內(nèi)聯(lián)”展開(kāi)。在return函數(shù)之前添加關(guān)鍵字。在類聲明中定義的成員函數(shù)自動(dòng)成為內(nèi)聯(lián)函數(shù)。內(nèi)聯(lián)函數(shù)的應(yīng)用:
1。重復(fù)調(diào)用函數(shù);
2。函數(shù)只有幾行,不包含for、while和switch語(yǔ)句。內(nèi)聯(lián)函數(shù)應(yīng)該在頭文件中定義,這與其他函數(shù)不同。
什么是內(nèi)聯(lián)函數(shù)?
內(nèi)聯(lián)函數(shù)具有通用函數(shù)的特點(diǎn),只有在函數(shù)調(diào)用的處理上不同于通用函數(shù)。調(diào)用一般函數(shù)時(shí),程序的執(zhí)行權(quán)應(yīng)轉(zhuǎn)移到被調(diào)用函數(shù),然后返回到調(diào)用它的函數(shù);調(diào)用內(nèi)聯(lián)函數(shù)時(shí),調(diào)用表達(dá)式由內(nèi)聯(lián)函數(shù)的主體替換。在使用內(nèi)聯(lián)函數(shù)時(shí),我們應(yīng)該注意以下幾點(diǎn):
1。內(nèi)聯(lián)函數(shù)中不允許使用循環(huán)語(yǔ)句和開(kāi)關(guān)語(yǔ)句。
如果內(nèi)聯(lián)函數(shù)有這些語(yǔ)句,編譯器會(huì)將函數(shù)視為普通函數(shù)來(lái)生成函數(shù)調(diào)用代碼。遞歸函數(shù)(調(diào)用它們自己的函數(shù))不能用作內(nèi)聯(lián)函數(shù)。內(nèi)聯(lián)函數(shù)只適用于只有1-5行的小函數(shù)。對(duì)于包含許多語(yǔ)句的大型函數(shù),函數(shù)調(diào)用和返回的代價(jià)相對(duì)較小,因此不必使用內(nèi)聯(lián)函數(shù)。
2. 內(nèi)聯(lián)函數(shù)的定義必須在第一次調(diào)用內(nèi)聯(lián)函數(shù)之前出現(xiàn)。
3. 在本專欄中提到的類結(jié)構(gòu)中,類描述中定義的所有函數(shù)都是內(nèi)聯(lián)函數(shù)。