c 內聯函式

2021-09-11 23:29:32 字數 783 閱讀 1244

內聯函式

內聯函式本質上是一種空間換時間的行為,相當於將內聯函式的**直接複製,而不是直接呼叫關係,犧牲記憶體,換取時間。

即當呼叫次數少,函式整體複雜的時候 適合普通函式

當呼叫次數多,函式整體簡單的時候 適合內聯函式

注:遞迴函式不可以是內聯函式 內聯函式也是編譯器的功能 有的編譯器不行

在類內定義的函式 預設都是內聯函式 類外不是

#include

using namespace std;

inline

void

fun();

// 內聯函式的宣告

intmain()

inline

void

fun(

)// 內聯函式的具體實現 在宣告和實現上都需要寫inline關鍵字

內聯函式與巨集

這個不好解釋 直接看**

#include

using namespace std;

inline

void

fun(

int i)

;#define sum(x) x*x

// 巨集的定義 如果寫成((x)*(x))就一樣了

intmain()

inline

void

fun(

int i)

// 內聯函式的具體實現 在宣告和實現上都需要寫inline關鍵字

結果:

1125

C 內聯函式

1 什麼是內聯函式?內聯函式就是小型函式,犧牲空間來節省函式呼叫的開銷,一般用作比較小的函式,即函式內部沒有迴圈 開關語句等。內聯函式被發明出來就是為了取代c中的巨集,因為巨集是單純的替換而沒有型別檢查所以經常出毛病,2 為什麼要引入內聯函式?當然,引入內聯函式的主要目的是 解決程式中函式呼叫的效率...

C 內聯函式

1 什麼是內聯函式?2 為什麼要引入內聯函式?3 為什麼inline能取代巨集?4 內聯函式和巨集的區別?5 什麼時候用內聯函式?6 如何使用內聯函式?7 內聯函式的優缺點?8 如何禁止函式進行內聯?9 注意事項 1 什麼是內聯函式?內聯函式是指那些定義在類體內的成員函式,即該函式的函式體放在類體內...

c 內聯函式

1 什麼是內聯函式?內聯函式是指那些定義在類體內的成員函式,即該函式的函式體放在類體內。2 為什麼要引入內聯函式?當然,引入內聯函式的主要目的是 解決程式中函式呼叫的效率問題。另外,前面我們講到了巨集,裡面有這麼乙個例子 define abs x x 0?x x 當 i出現時,巨集就會歪曲我們的意思...