程式設計 微知識 (六) 行內函式(inline function)

內嵌函數其實就是將一個function直接展開至程式碼當中。

內嵌函數,也就是在 function前加入inline這個關鍵字,其用意是加速程式的執行速度。經過inline所宣告的function會直接展開在程式碼裡面,展開後的程式碼就會直接存取該參數,省略了呼叫function的資源浪費。也就是好處是不用呼叫函式執行速度較快,缺點是程式會因此變大,通常會用在程式碼不多但是卻常被呼叫的函式,然後只有當編譯器的效益分析為有利的時候,inline的動作才會發生。

本文以C++實作介紹。

製作一個兩數相比回傳較小的值的行內函數:

#include <iostream>

inline int min(int a, int b)
{
	return a < b ? a : b;
}

using namespace std;

int main() {

	cout <<"min(99,37)="<< min(99,37)<<endl;

	system("pause");
	return 0;
}

執行結果如下:

有夢最美 築夢踏實

活在當下 認真過每一天

我是阿夢 也是Ace