Friday, January 20, 2012

inline

inline可以加在函式定義的最前面,像是形容詞,作用是「建議」compiler,可以在每回呼叫該函式的點直接把函式內文貼過去,不需要讓程式程序跳來跳去的。

使用inline是因為:

  • 有些函式的內文很少
  • 呼叫、回傳等程序的成本相對高
然而,compiler若是發現該函式的內文很多或其他情形,是會忽略inline的。

#include <iostream>

using namespace std;

inline int max(int a, int b){
 return (a>b)?a:b;
}

int main(){

 int a=3, b=4;

 cout << "max(a,b) = " << max(a,b) << endl;

 return 0;
}