C 中內聯函式的用法

2022-05-12 08:02:48 字數 539 閱讀 8113

程式帶呼叫函式需要一定的時間\空間花銷,這就要求在主程式進行過程中呼叫函式前幾下執行指令的位址及其他相關資訊,一邊函式呼叫後能繼續執行.函式呼叫後流程返回先前記下的位址處,並根據記錄的相關資訊回覆,而這都需要消耗時間,若有函式頻繁使用,那麼執行時間會很長,大大降低程式執行效率.因此,我們使用內聯函式將函式**直接嵌入到主調函式中,而不是將流程轉出去,減少頻繁呼叫帶來的效率降低的問題.

下以 max(int a, int b) 為例:

#includeusing

namespace

std;

inline

int max(int,int

); #宣告內聯函式

intmain()

inline

int max(int a,int

b)

注意,內聯函式的使用範圍多是體積小而使用的頻繁的**.像包含遞迴\迴圈\switch語句的函式是無法進行**置換的,而**量多大上千行的函式在呼叫點展開也不現實,在這些情況下,編譯系統會自動忽略inline宣告,按照普通函式處理.

C 中的內聯函式

華清遠見嵌入式學院 講師。c 中存在一些具有特殊意義或功能的特殊函式,我們來簡單介紹一下內聯函式。從軟體工程的角度來看,我們通常將乙個程式通過一組函式來進行實現,但是函式的呼叫涉及到執行時間的開銷,如果有的函式需要頻繁使用,則累計占用的時間會很長,所以c 提供了內聯函式的機制來提高效率,也就是在編譯...

C 中的內聯函式

c 中的內聯函式 華清遠見嵌入式學院講師。c 中存在一些具有特殊意義或功能的特殊函式,我們來簡單介紹一下內聯函式。從軟體工程的角度來看,我們通常將乙個程式通過一組函式來進行實現,但是函式的呼叫涉及到執行時間的開銷,如果有的函式需要頻繁使用,則累計占用的時間會很長,所以c 提供了內聯函式的機制來提高效...

C 中的內聯函式

本文主要和大家一起來學習一下c 中的內聯函式,旨在能夠更深層次的了解和掌握c 相關用法,力爭做到知其然還要知其所以然。關於內聯函式,本文主要從以下幾個方面進行了整理和歸納。一 相關描述 1 內聯函式主要目的是為了提高函式的執行效率,用關鍵字inline放在函式定義的前面即可,將函式指定為內聯函式。2...